社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

python脚本厉害吗?使用selenium实现前程无忧简历自动刷排名!

python • 5 年前 • 469 次点击  




使用过前程无忧,智联招聘等这些招聘网站的都知道,网站都会有一个简历刷新功能,hr那边检索简历都时候网站会根据求职者简历的刷新时间来进行排序,所以如果你想要你的简历排在前列,让hr一眼看见的话,那就勤刷新,隔段时间刷新一次,或者花钱购买网站提供的增值服务,帮你置顶。

温馨提示:

不过花钱不存在的,天天守着电脑刷新简历也是不可能滴~

那就动手写个自动刷新的python脚本好了。

导入所需包

1.selenium是一个自动化测试工具,我们可以通过selenium调用各种浏览器,然后像一个真正的用户去操作,支持的浏览器包括Chrome,Firefox,Safari,PhantomJS等。

2.time包我们用来控制页面等待和循环。

from selenium import webdriver
import time


登录账号





这是前程无忧的登录界面,通过id去定位账号密码框,填入自己的账号密码,然后定位登录按钮点击就可以完成登录了。

需要注意一下的是如果长时间未登录账号或者是在一台新的电脑上登录账号,可能需要填写验证码,在执行之前自己先在浏览器登录下应该就不用填写验证码了。

driver=webdriver.Safari()
driver.get("https://login.51job.com/")
driver.maximize_window()
time.sleep(5)
driver.find_element_by_id("loginname").send_keys("你的账号")
driver.find_element_by_id("password").send_keys("你的密码")
time.sleep(5)
driver.find_element_by_id("login_btn").click()
time.sleep(10)


刷新简历





登录成功之后就会跳转到我的51job界面,然后定位刷新的按钮点击下便完成任务了。

我这边是加入了一个时间的循环,每20分钟刷新一次。

while True:
current_time = time.localtime(time.time())
if((current_time.tm_min%2 == 0) and (current_time.tm_sec == 0)):
driver.refresh()
time.sleep(10)
driver.find_element_by_xpath("/html/body/div[3]/div[3]/div[2]/div[1]/div[2]/div/div[2]/span[1]").click()
elif((current_time.tm_hour == 18) and (current_time.tm_sec == 0)):
driver.close()
break


完整代码

# -*- coding:utf-8 -*-
from selenium import webdriver
import time
driver=webdriver.Safari()
driver.get("https://login.51job.com/")
driver.maximize_window()
time.sleep(5)
driver.find_element_by_id("loginname").send_keys("你的账号")
driver.find_element_by_id("password").send_keys("你的密码")
time.sleep(5)
driver.find_element_by_id("login_btn").click()
time.sleep(10)
while True:
current_time = time.localtime(time.time())
if((current_time.tm_min%20 == 0) and (current_time.tm_sec == 0)):
driver.refresh()
time.sleep(10)
driver.find_element_by_xpath("/html/body/div[3]/div[3]/div[2]/div[1]/div[2]/div/div[2]/span[1]").click()
elif((current_time.tm_hour == 18) and (current_time.tm_sec == 0)):
driver.close()
break




*声明:本文于网络整理,版权归原作者所有,如来源信息有误或侵犯权益,请联系我们删除或授权事宜。


觉得不错,点个“在看”然后转发出去

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/51774
 
469 次点击