简介
- http://www.selenium.org.cn/1793.html
安装
- 首先安装好python。
- 安装好python的Selenium库
通过cmd安装,命令:pip install selenium - 安装浏览器的Driver
这里以Chrome为例子:https://chromedriver.storage.googleapis.com/index.html
找到对应你Chrome浏览器的版本的Driver
下载之后,放在常用的盘里。我这里是:
python通过Selenium自动化操作前程无忧网站
- 使用Driver。获取Chremo的WebDriver对象
from selenium import webdriver
driver = webdriver.Chrome(r'E:\Python\chromedriver_win32\chromedriver.exe')
- 操作Chrome打开前程无忧网站
driver.get("http://www.51job.com")
- 可以使用F12控制台,来查看你想要操作的对象(控件)。比如这里想要输入搜索框,就要先找到输入框控件,有id优先通过id来查询控件对象。
# 通过id获取获取到输入框
ele = driver.find_element_by_id("kwdselectid")
# 写入搜索关键字“java”
ele.send_keys('java')
查询之后进行简单的统计(写入Excel)
- 完整代码:
# coding: utf-8
from selenium import webdriver
import xlwt
driver = webdriver.Chrome(r'E:\Python\chromedriver_win32\chromedriver.exe')
driver.implicitly_wait(10)
driver.get("http://www.51job.com")
ele = driver.find_element_by_id("kwdselectid")
ele.send_keys('java')
ele_work = driver.find_element_by_id("work_position_input")
ele_work.click()
driver.implicitly_wait(15)
eles = driver.find_elements_by_css_selector(
'#work_position_click_center_right_list_000000 em[class=on]'
)
for ele in eles:
ele.click()
driver.implicitly_wait(15)
driver.find_element_by_id(
'work_position_click_center_right_list_category_000000_040000' # 深圳
).click()
driver.implicitly_wait(20)
# 保存城市选择
driver.find_element_by_id('work_position_click_bottom_save').click()
driver.implicitly_wait(50)
# 点击搜索
driver.find_element_by_css_selector('.ush button').click()
driver.implicitly_wait(20)
# 结果分析
jobs = driver.find_elements_by_css_selector('.j_joblist div[class=e]')
# 创建一个Excel Workbook 对象
book = xlwt.Workbook()
# 增加一个 sheet
sh = book.add_sheet('统计')
# 写入
row = 0
for job in jobs:
fields = job.find_elements_by_tag_name('p')
col = 0
for field in fields:
strField = field.text
sh.write(row, col, strField)
col += 1
row += 1
book.save('e:\\51job.xls')
driver.quit()
pass