python是真的牛逼,各种库使用起来非常简单,功能强大。在爬数据的时候遇到反爬虫时,可以使用Python通过selenium操作Chrome访问网页,就像人工操作一样,据说淘宝今日头条这些都是扛不住这样造的。
注意:此教程环境为centos7
首先安装chrome
复制
yum install https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm
查看chrome版本
复制
google-chrome -version
下载并安装chromedriver
使用浏览器打开下面的网站,找到和你上一步得到的chrome版本相似或一致的版本,并使用鼠标右键取得下载地址。
复制
http://chromedriver.storage.googleapis.com/index.html
我安装的是108.0.5359.124,chromedriver版本选择108.0.5359.71,使用wget命令下载到服务器
复制
wget http://chromedriver.storage.googleapis.com/108.0.5359.71/chromedriver_linux64.zip
解压,如果解压失败就自己手动解压吧
复制
unzip chromedriver_linux64.zip
移动到/usr/bin目录下
复制
mv chromedriver /usr/bin/
给执行权限
复制
chmod +x /usr/bin/chromedriver
检查chrome版本
复制
chromedriver --version
到此安装完成。
简单使用
复制
# -*- coding: UTF-8 -*-
from retrying import retry
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
url='https://m.baidu.com/'
ag = "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Mobile Safari/537.36"
ch_options = Options()
ch_options.page_load_strategy = 'eager'
ch_options.add_argument('--no-sandbox')
ch_options.add_argument('--disable-dev-shm-usage')
ch_options.add_argument('--headless')
ch_options.add_argument('user-agent=%s'%ag)
rd = webdriver.Chrome(chrome_options=ch_options)
rd.get(url)
print(rd.page_source)上面代码简单访问了移动版百度首页,使用时需安装python模块。
复制
pip3 install selenium pip3 install retrying





评论 (0)