Python实战项目之前程无忧招聘信息获取

Python实战项目之前程无忧招聘信息获取
实例功能说明:Python+lxml+Selenium解析获取前程无忧搜索Python关键字首页信息并以CSV文件格式存储到本地
1、安装所需库:selenium,lxml
2、准备chromedriver.exe驱动工具
3、代码实现

Keyword="Python"
#浏览器驱动实例化
drivers=webdriver.Chrome(executable_path=webdriver_path)
#窗口最大化
drivers.maximize_window()
#请求访问前程无忧
drivers.get("https://www.51job.com/")
time.sleep(2)
#点击选择城市
drivers.find_element_by_id("work_position_input").click()
time.sleep(2)
#取消预选择城市
drivers.find_element_by_xpath("//div[@id='work_position_click_multiple_selected']/span[@class='ttag']").click()
time.sleep(2)
#重新选择深圳
drivers.find_element_by_xpath("//div[@class='work_position_click_center_right_list de d3']//em[@id='work_position_click_center_right_list_category_000000_040000']").click()
# 选择确定按钮
drivers.find_element_by_xpath("//div[@class='but_box']//span[@class='p_but']").click()
#输入搜索关键字
drivers.find_element_by_id("kwdselectid").send_keys(Keyword)
time.sleep(2)
drivers.find_element_by_xpath("//div[@class='ush top_wrap']/button").click()
time.sleep(2)
html = etree.HTML(drivers.page_source)
joblists = html.xpath("//div[@class='dw_table']//div[@class='el']")
header = ['职位名', '公司名', '薪资', '工作地点', '详情页面']
with open("qianchengwuyou.csv", "a+", encoding='gbk',newline='\n') as fp:
    writer = csv.writer(fp)
    writer.writerow(header)
for joblist in joblists:
    jobinfo = []
    jobname = "".join(joblist.xpath("./p//a//@title"))
    jobnamelink = "".join(joblist.xpath("./p//a//@href"))
    jobcompanys ="".join(joblist.xpath("./span[@class='t2']/a/text()"))
    jobpay = "".join(joblist.xpath("./span[@class='t4']/text()"))
    jobaddr = "".join(joblist.xpath("./span[@class='t3']/text()"))
    jobinfo.append(jobname)
    jobinfo.append(jobcompanys)
    jobinfo.append(jobpay)
    jobinfo.append(jobaddr)
    jobinfo.append(jobnamelink)
    with open("qianchengwuyou.csv", "a+", encoding='gbk',newline='\n') as fp:
        writer = csv.writer(fp)
        writer.writerow(jobinfo)

获取效果
Python实战项目之前程无忧招聘信息获取