宝塔php爬虫无头浏览器,爬虫利器selenium和无头浏览器的使用

0. 前言

Selenium 的初衷是打造一款优秀的自动化测试工具,但是慢慢的人们就发现,Selenium 的自动化用来做爬虫正合适。我们知道,传统的爬虫通过直接模拟 HTTP 请求来爬取站点信息,由于这种方式和浏览器访问差异比较明显,很多站点都采取了一些反爬的手段,而 Selenium 是通过模拟浏览器来爬取信息,其行为和用户几乎一样,反爬策略也很难区分出请求到底是来自 Selenium 还是真实用户。

通过 Selenium 来做爬虫,不用去分析每个请求的具体参数,比起传统的爬虫开发起来更容易。Selenium 爬虫唯一的不足是慢,如果你对爬虫的速度没有要求,那使用 Selenium 是个非常不错的选择。

1. 安装和使用1pip install selenium

1.1 页面操作1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19# 输入数据

browser.find_element_by_css_selector('.rfm input[name="username"]').send_keys('123456')

# 选择数据

browser.find_element_by_xpath("//select[@name='questionid']/option[text()='父亲的手机号码']").click()

# 敲回车

browser.find_element_by_css_selector('button[name="loginsubmit"]').send_keys(Keys.ENTER)

# 只等3秒

browser.implicitly_wait(3)

# 获取cookie

cookies_list = driver.get_cookies()

cookies_dict = {}

for cookie in cookies_list:

cookies_dict[cookie['name']] = cookie['value']

print(cookies_dict)

2. 遇到的问题

文件不能命名为selenium

2.2 Message: ‘chromedriver’ executable needs to be in PATH.

2.3 Message: unknown error: cannot find Chrome binarycentos 安装 chrome1

2

3wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm

sudo yum localinstall google-chrome-stable_current_x86_64.rpm

google-chrome --no-sandbox --version # 看到版本后去下载相关的driver

ubuntu 安装 chrome1

2

3wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb

sudo apt install ./google-chrome-stable_current_amd64.deb

google-chrome --no-sandbox --version

3. 参考资料

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值