拉勾招聘,自動化投遞簡歷腳本


本人也只是出步了解自動化,腳本寫得比較爛,但基本上運行沒問題,希望有技術的大大能給些指導。

由於最近在找工作,智聯跟前程無憂都有一鍵投遞功能,拉勾跟BOSS直聘的話只能一個一個點,對於正在海投的小伙伴們來說工作量挺大的,

給大家分享個用python+selenium編寫的自動投遞腳本。

主要用的谷歌瀏覽器、安裝好python(安裝完成時記得勾選配置環境變量)、seleniuim工具(可以在cmd命令窗口輸入pip install selenium),下載個谷歌的webdriver插件。

需要在拉勾上傳好附件簡歷。

from selenium import webdriver
from time import sleep
# from selenium.webdriver.common.action_chains import ActionChains
# from selenium.webdriver.common.keys import Keys
#啟動谷歌
A = webdriver.Chrome()            #選擇瀏覽器
lg_url="https://www.lagou.com/"      #拉勾網url
A.maximize_window()         #窗口最大化
A.implicitly_wait(3)        #設置超時訪問為3秒
A.get(lg_url)                     #前往

def qiehuan():
    all=A.window_handles
    A.switch_to.window(all[-1])

try:
    A.find_element_by_link_text("深圳站").click()              #切換深圳場地
except:
    print("無切換站點")
A.find_element_by_xpath("//*[@id='lg_tbar']/div/ul/li[1]/a").click()        #點擊首頁登陸
sleep(0.5)
A.find_element_by_xpath("/html/body/section/div[4]/ul/li[3]/a").click()         #由於密碼登陸要驗證碼,所以點QQ登陸
sleep(0.5)
qiehuan()
A.switch_to.frame("ptlogin_iframe")
A.find_element_by_id("switcher_plogin").click()
A.find_element_by_id("u").send_keys("********")               #輸入自己的QQ!!!!
A.find_element_by_id("p").send_keys("*********")               #密碼
sleep(1)
A.find_element_by_id("login_button").click()
sleep(1)
A.find_element_by_xpath("//*[@id='search_input']").send_keys("接口測試")      #輸入崗位
A.find_element_by_xpath("//*[@id='search_button']").click()             #搜索W
sleep(0.5)
#招聘信息:最新
A.find_element_by_xpath("//*[@id='order']/li/div[1]/a[2]").click()
sleep(1)
#月薪5-10
A.find_element_by_xpath("//*[@id='order']/li/div[2]/div/span").click()
A.find_element_by_xpath("//*[@id='order']/li/div[2]/div/ul/li[5]/a").click()
sleep(1.5)
#工作性質:全職
A.find_element_by_xpath("//*[@id='order']/li/div[3]/div/span").click()
A.find_element_by_xpath("//*[@id='order']/li/div[3]/div/ul/li[2]/a").click()
sleep(1.5)
#學歷
# A.find_element_by_xpath("//*[@id='filterCollapse']/li[2]/a[2]").click()
# sleep(0.5)
#遍歷投遞
n=1                     #當前頁數
while n<=10:                                #投遞簡歷的頁數,一頁為15個崗位
        print("第%d頁" %(n))
        all_li="//*[@id='s_position_list']/ul/li"
        for i in range(1,16):               #遍歷投遞第一頁招聘信息15個崗位
            i=[i]
            i=all_li + str(i)
            biaoti=A.find_element_by_xpath(i +"/div[1]/div[1]/div[1]/a/h3").text        #獲取li中的崗位標題
            xinzi=A.find_element_by_xpath(i +"/div[1]/div[1]/div[2]/div[1]/span").text  #獲取liW中的薪資
            print("職位", biaoti,xinzi)                       #打印崗位信息
            sleep(0.5)
            A.find_element_by_xpath(i +"/div[1]/div[1]/div[1]/a/h3").click()            #逐個點擊招聘標題
            sleep(0.5)
            qiehuan()
            sleep(1)
            try:
                A.find_element_by_xpath("/html/body/div[2]/div/div[2]/ul/div/li[1]/span[1]").click()        #附件簡歷
            except:
                pass
            sleep(0.5)
            try:
                A.find_element_by_xpath("/html/body/div[2]/div/div[2]/div[1]/div[2]/a").click()     #投遞簡歷
            except:         #如果已經投遞過則關閉當前窗口,進行下一個崗位投遞
                A.close()
                continue
            try:
                A.find_element_by_xpath("//*[@id='delayConfirmDeliver']").click()           #提示簡歷不符合,依然投遞
                sleep(1)
                A.find_element_by_xpath("//*[@id='knowed']").click()            #確認投遞成功
                sleep(1)
            except:
                pass
            A.close()           #關閉當前窗口
            qiehuan()           #返回上層窗口
            if i==15:
                break
        sleep(1)
        yeshu=A.find_elements_by_xpath("//*[@id='s_position_list']/div[2]/div/span")        #獲取頁數
        yeshu[-1].click()                       #點擊下一頁
        qiehuan()
        n=n+1                   #頁數遞增

sleep(5)
A.quit()

 QQ的話輸入自己的QQ賬號,密碼;崗位也能修改;薪資、學歷可根據自身需求更改li[]里的數字。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM