IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> 51job_selenium爬虫 -> 正文阅读

[开发测试]51job_selenium爬虫

51job爬虫


仅仅提供学习使用


程序

仅仅提供学习使用

import requests
from lxml import etree
from bs4 import BeautifulSoup
import json
from selenium.webdriver.chrome.options import Options   #实现五可视化
from selenium.webdriver import ChromeOptions     #实现规避被检测到的风险
from time import sleep
from selenium.webdriver import Chrome
import pandas as pd
chrome_options = Options()
chrome_options.add_argument('--headless')
chrome_options.add_argument('--disable--gpu')

#实现规避检测
option = ChromeOptions()
option.add_experimental_option('excludeSwitches',['enable-automation'])
chrome = Chrome(executable_path=r'E:\浏览器下载\chromedriver',options=chrome_options)

url = 'https://search.51job.com/list/000000,000000,0000,32,9,99,+,2,1.html?lang=c&postchannel=0000&workyear=99&cotype=99&degreefrom=99&jobterm=99&companysize=99&ord_field=0&dibiaoid=0&line=&welfare='
chrome.get(url)
input = chrome.find_elements_by_id('keywordInput')[0]
input.send_keys('java 成都')
search = input.find_element_by_xpath('//*[@id="search_btn"]')
search.click()

text = chrome.page_source
tree = etree.HTML(text)
xinxi = tree.xpath('//script[@type="text/javascript"]')[3]
dict_ = xinxi.xpath('./text()')
num = json.loads(dict_[0][28:])['total_page']
data = []

for _ in range(int(num)-1):
    text = chrome.page_source
    tree = etree.HTML(text)
    xinxi = tree.xpath('//script[@type="text/javascript"]')[3]
    dict_ = xinxi.xpath('./text()')
    # print(dict_[0][28:])
    dict_ = json.loads(dict_[0][28:])['engine_jds']
    for i in dict_:
        data.append([i['job_name'], i['workarea_text'], i['updatedate'], list(i['attribute_text'])[1],list(i['attribute_text'])[2], i['providesalary_text'],list(i['attribute_text'])[-1]])
        # print(i['job_name'], i['workarea_text'], i['updatedate'], list(i['attribute_text'])[1],list(i['attribute_text'])[2], i['providesalary_text'],list(i['attribute_text'])[-1])
    try:
        sleep(1)
        next_ = chrome.find_elements_by_xpath('//li[@class="next"]')[0]
        next_.click()
        chrome.refresh()
    except:
        break

data = pd.DataFrame(data,columns=['招聘岗位','招聘城市','招聘年月','工作经验','学历要求','招聘薪资','招聘数量'])
writer = pd.ExcelWriter(r'C:\Users\24132\Desktop\data_spyder.xlsx')		# 写入Excel文件
data.to_excel(writer, 'page_1', float_format='%.10f')		# ‘page_1’是写入excel的sheet名
writer.save()
writer.close()
# for i in range(1,101):
#     text = chrome.page_source
#
#     tree = etree.HTML(text)
#     xinxi = tree.xpath('//script[@type="text/javascript"]')[3]
#
#     dict_ = xinxi.xpath('./text()')
#     print(dict_[0][28:])
#     dict_ = json.loads(dict_[0][28:])['engine_jds']
#     # job_name workarea_text updatedate attribute_text  providesalary_text
#     for i in dict_:
#         print(i['job_name'], i['workarea_text'], i['updatedate'], list(i['attribute_text']), i['providesalary_text'])

# for i in range(1,101):
#     text = requests.get(url=url.format(i), headers=headers)
#     if text.status_code != 200:
#         break
#     tree = etree.HTML(text.text)
#     xinxi = tree.xpath('//script[@type="text/javascript"]')[2]
#     dict_ = xinxi.xpath('./text()')
#     dict_ = json.loads(dict_[0][29:])['engine_jds']
#     # job_name workarea_text updatedate attribute_text  providesalary_text
#     for i in dict_:
#         print(i['job_name'], i['workarea_text'], i['updatedate'], list(i['attribute_text']), i['providesalary_text'])

在这里插入图片描述

总结

老老实实的迈好每一步,相信成功就在你身边 甘愿为理想“头破血流”
  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2021-12-01 18:00:28  更:2021-12-01 18:00:39 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/18 5:50:38-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码