最近想试试找工作,所以在58同城上放了简历,这个网站的简历管理里有一个功能,就是刷新,每刷一次,自己简历就会变成刚刚修改过的,排在该类的最前面,相当于手工置顶。

于是我想用python来实现自动点击。网上找了很多资料,有两个包很合适,一个是splinter,一个是selenium。

刚开始我用splinter,结果没装firefox,就去装了。

#coding=utf-8
import time
from splinter import Browser

def splinter(url):
    browser = Browser()
    
    #进入网站
    browser.visit(url)
    
    #选择邮箱登陆
    browser.find_by_id('login_tab_orig').click()
    
    #填写账号密码
    browser.find_by_id('username_new').fill('xxxxxxxxxx@163.com')
    browser.find_by_id('password_new').fill('xxxxxxxxxx')
   
    #点击登陆按钮
    browser.find_by_id('btnSubmit_new').click()
    
    #打开我的简历菜单
    browser.find_by_id('menu4').click()
    
    #打开简历管理
    browser.find_by_id('20').click()

if __name__ == '__main__':
    websize ='https://passport.58.com/login?path=http://my.58.com/?pts=xxxxxxxxx'
    splinter(websize)

splinter登陆,点击,打开菜单都可以,但是最后点击就是找不到刷新那个按钮,各种办法都试了。css,id,name,text,link,都找过,不行。

后来用selenium试试,跟之前的情况一样,也是到最后也一步找不到刷新按钮在哪儿。

再搜索,发现有一个selenium IDE可以装在Firefox上,录制我的网页操作,我去装了,这个很爽,网页上的点击,输入,移动,都可以录下来,可以回放,可以导出成各种语言的代码,我选了python,后来一看,发现在最后那个页面,简历和相关的功能是在另一个Frame里面,难怪之前一直找不都。

于是就加了driver.switchto().frame('ContainerFrame‘),后面是那个frame的名字

然后再在这个frame里寻找text ‘刷新’,就可以找到了。

代码很直白,没有用class,函数等,直接运行。

# -*- coding: utf-8 -*-
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import Select
import time

driver = webdriver.Firefox()
driver.implicitly_wait(30)
base_url = "http://wh.58.com/"
driver.get(base_url + "/")
driver.find_element_by_id("tomy58").click()
driver.find_element_by_id("login_tab_orig").click()
driver.find_element_by_id("username_new").clear()
driver.find_element_by_id("username_new").send_keys("lx'x'x'x'x'x'x")
driver.find_element_by_id("password_new").clear()
driver.find_element_by_id("password_new").send_keys("xxxxxxx")
driver.find_element_by_id("btnSubmit_new").click()
driver.find_element_by_id("menu4").click()
driver.find_element_by_id("20").click()

#这之前的跟splinter一样,下面进入frame

driver.switch_to.frame("ContainerFrame")

#设置一个无限循环,但是隔五秒刷新,以免太快出问题。

#有一点特别注意,因为有多个简历,刷新这个词不止一个,

#所以我把找到的元素存进列表,循环点击。

while True:
    list = driver.find_elements_by_link_text(u"刷新")
    for i in range(3):
        list[i].click()
    
    time.sleep(5)

有个小细节,在‘刷新’前,加了一个字母u,这是专门处理汉字的。

另外list不能放在while循环之外,我试过,后来说每次遍历之后,刷新的位置改变,无法找到,所以只能每次重新找一次。

最后在selenium中,find_elements_by_,,,,,,和find_element_by.......,这两个只有一个s的区别,但是前者可以找到多个特征相同的元素,后者只有一个。

通过python+selenium实现了58同城的自动登录,打开简历管理页面,并自动反复刷新所有简历,永远排在前面。

python+selenium实现58同城简历自动刷新,永排第一相关推荐

  1. 利用python爬取58同城简历数据

    利用python爬取58同城简历数据 最近接到一个工作,需要获取58同城上面的简历信息(http://gz.58.com/qzyewu/).最开始想到是用python里面的scrapy框架制作爬虫.但 ...

  2. 利用python爬取58同城简历数据_利用python爬取58同城简历数据-Go语言中文社区

    利用python爬取58同城简历数据 最近接到一个工作,需要获取58同城上面的简历信息(http://gz.58.com/qzyewu/).最开始想到是用python里面的scrapy框架制作爬虫.但 ...

  3. 利用python爬取58同城简历数据_python爬虫程序 58同城二手交易信息爬取

    本脚本分为5部分: spider_main    主程序 url_manager    url管理器 html_downloader    网页下载器 html_parser    网页解析器 htm ...

  4. python自动化简历_python+selenium实现简历自动刷新的示例代码

    本文用到的文件的下载地址 百度网盘链接: https://pan.baidu.com/s/1tmpdEfAZKff5TOMAitUXqQ 提取码: e6at 1 安装Python 和 selenium ...

  5. 字体加密-58同城简历信息爬取

    加密文件通过base64加密,先拿到加密字符串,通过base64解密,保存成woff文件 利用fonttool把woff文件保存成xml文件,再开始分析真实数据与加密数据的动态映射关系 映射关系如下: ...

  6. 简历爬取系列(二)——破解58同城简历中的加密字符

    直接目的:针对58同城简历数据中的加密字符,进行破解,以还原其对应的真实文字. 根本目的:爬取58同城网站上的个人简历,进行信息储备. 现有环境:安装python3.6的五服务器. 下面就开始吧. 如 ...

  7. python爬取58同城的兼职信息

    标题python爬取58同城的兼职信息 刚刚开始学习爬虫,一些 自己研究的小东西,爬取58同城上面的兼职信息放入Excel表格里,具体代码解释在代码里给出注释,下面给出完整代码: #首先是导包 imp ...

  8. python实战|python爬取58同城租房数据并以Excel文件格式保存到本地

    python实战|python爬取58同城租房数据并以Excel文件格式保存到本地 一.分析目标网站url 目标网站:https://cq.58.com/minsuduanzu/ 让我们看看网站长啥样 ...

  9. Python爬取58同城广州房源+可视化分析

    感谢关注天善智能,走好数据之路↑↑↑ 欢迎关注天善智能,我们是专注于商业智能BI,人工智能AI,大数据分析与挖掘领域的垂直社区,学习,问答.求职一站式搞定! 对商业智能BI.大数据分析挖掘.机器学习, ...

最新文章

  1. oracle分页的使用,oracle中分页的实现方式.rownum的使用
  2. 毕业后的第二个月的一点思绪
  3. sencha touch tabsidebar 源码扩展
  4. IT行业热点商业模式随笔第七章——商业模式创新规律
  5. linux 运行python 看不到异常信息_linux python运行报编码错误
  6. 2008年汶川大地震中的SAP成都研究院
  7. 里公式后面标号怎么对齐_你若会用Word里F4键,又何须加班到半夜?
  8. 在Ubuntu下创建hadoop组和hadoop用户
  9. Zookeeper集群安装Version3.5.1
  10. php 调用openoffice,PHP调用OpenOffice实现word转PDF的方法
  11. java mongo数据去重复_java – MongoSpark保存重复的密钥错误E11000
  12. 读书笔记_打开量化投资的黑箱11
  13. 华为root_传Mate40系列12月率先升级鸿蒙OS 华为官方回应:真相原来是这样
  14. Pyinstaller的安装和使用
  15. Aliyun-OSS海量存储
  16. 怎么用服务器刷网站排名,怎样提高网站排名?这三个提升网站排名的方法你一定要知道...
  17. Application Log--使用BAL_DSP_LOG_DISPLAY展现日志
  18. Python爬虫看腻了?JS爬虫来拯救你!
  19. 【超详细】全国大学生软件测试大赛:移动应用测试脚本编写要求
  20. 千万别乱搞,定位不清晰,还能干啥?

热门文章

  1. 音乐机器人活动教案_音乐活动《机器人》
  2. 数据压缩导论--叨叨
  3. 人教版初中地理教案五-Leo老师
  4. oracle万能分页代码,oracle高效分页存储过程代码
  5. FPGA学习之日常工作 三模冗余
  6. android+获取相册列表,android 获取相册列表的实现(二)
  7. iOS 安全攻防学习规划
  8. python气象绘图速成_基于Python气象数据处理与可视化分析
  9. 推荐一堆好掂嘅 标头 影嘅东东 (内有靓女,慎入!)
  10. python 短网址_一个简易的Python短网址生成源码