tesserocr
1 安装 —— Windows环境
参考
作用:识别验证码conda install -c conda-forge tesserocr
2 命令行中使用tesseract命令
- 用下图测试安装是否成功
tesseract testocr.png result -l eng && type result.txt
,其中调用了tesseract命令,第一个参数为图片的名称,-l指定使用的语言包,这里的eng表示使用英文,result.txt是保存的结果
3 Python中使用tesserocr库
1 | import tesserocr |
PhantomJS
1 安装
- 下载地址
- 直接解压即可用
- 将phantomjs-2.1.1-windows\bin对应的目录加到环境变量中,或者将phantomjs.exe复制到我们配置的Anaconda的Python虚拟环境的Script文件夹中
- 这里我们选择的是后者,然后在该虚拟环境命令行输入phantomjs即可进入Phantomjs
2 在python中使用
1 | # 在控制台输出https://www.baidu.com |
Scrapy
conda install Scrapy
- 测试:在命令行输入
scrapy
pyspider
需要先安装PhantomJS
pip install pyspider
报错ERROR: Command errored out with exit status 10: python setup.py egg_info Check the logs for full command output.
前往pycurl下载pycurl‑7.43.0.4‑cp37‑cp37m‑win_amd64.whl(根据python3.7和64位系统而选择)
pip install pycurl-7.43.0.4-cp37-cp37m-win_amd64.whl
爬虫基础
1 HTTP基本原理
1.1 URI & URL
- URI Uniform Resource Identifier 统一资源标识符
- URL Universal Resource Locator 统一资源定位符
- URL是URI的子集,URI还包括URN(Universal Resource Name 统一资源名称)只命名资源但不指定位置
1.2 HTTPS
Hyper Text Transfer Protocol over Secure Socket Layer 是以安全为目标的HTTP通道。有些网站虽然HTTPS协议,但仍被提醒不安全,可能是证书验证不通过,如果要爬取这样的站点就要设置忽略证书的选项。
2 代理的基本原理
有的爬虫刚开始可以正常抓取数据,但是片刻后出现403错误,可能是网站采取了反爬虫措施。比如服务器检测单位时间内某IP的请求次数,超过阈值则拒绝服务,这需要借助某种方式伪装IP。如设置代理,不断更换
2.1 代理的作用
- 访问一些平时无法访问的站点
- 提高访问速度
- 隐藏真实IP