利用selenium实现动态网页的爬取

import re
from selenium import webdriver
from selenium.webdriver.chrome.options import Options

# 通过获取关键字职位数量
def numberPositionsByKeyword(searchWord):
    # 创建chrome参数对象
    chrome_options = Options()
    # 把chrome设置成无界面模式,不论windows还是linux都可以,自动适配对应参数
    chrome_options.set_headless()
    # 模拟浏览器打开网页
    url = "https://search.51job.com/list/070200,000000,0000,00,9,99," + searchWord + ",2,1.html?lang=c&stype=&postchannel=0000&workyear=99&cotype=99&degreefrom=99&jobterm=99&companysize=99&providesalary=99&lonlat=0%2C0&radius=-1&ord_field=0&confirmdate=9&fromType=&dibiaoid=0&address=&line=&specialarea=00&from=&welfare="
    browser = webdriver.Chrome(executable_path = 'C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe',chrome_options = chrome_options)
    browser.get(url)
    # 设置智能等待时间
    browser.implicitly_wait(20)
    pagestr = browser.page_source
    # 正则表达式    ()只要括号内的数据
    restr = """<div class="rt">([\s\S]*?)</div>"""
    regex = re.compile(restr, re.IGNORECASE)
    myList = regex.findall(pagestr)
    changeStr = myList[0].strip()
    restr = "(\\d+)"
    regex = re.compile(restr, re.IGNORECASE)
    myList = regex.findall(changeStr)
    browser.quit()
    return myList[0]

numberPositionsByKeyword("数据分析师")
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值