Spider
GYT0313
邮箱:guyongtao@qq.com
展开
-
网络爬虫之构造Request对象'User-Agent'
爬虫中可以伪装浏览器,通过设置一个Request对象的’User-Agent’选项.方法一:构造请求时直接构造url = 'http://www.httpbin.org/post'headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:34.0) Gecko/20100101 Firefox/34.0...原创 2018-05-28 19:22:38 · 7565 阅读 · 0 评论 -
Python网络爬虫之代理池的搭建
源码地址: GitHub原创 2018-09-25 19:56:22 · 905 阅读 · 6 评论 -
Python网络爬虫之极验滑动验证码识别
极验验证码示例:验证码分析使用代码完成极验验证码的识别,需要了解一下几点:通过该验证码的识别动作为:点击并拖拽滑块-滑动滑块至缺口处-释放鼠标该验证码增加了机器学习来识别拖动的轨迹,即:人不可能实现匀速拖拽所以为解决被识别出为非人为拖拽,则控制拖拽的速度,一般人的拖拽为先加速后减速。为模拟人的行为,使用Selenium工具。代码分析:定义CrackGeetest()类,该类...原创 2018-09-23 13:42:15 · 8428 阅读 · 6 评论 -
Ubuntu16.04在Docker上安装Splash
1. 安装前请先安装Docker, 安装步骤请自行百度.2. Docker安装完成后, 启动Docker, 并且运行docker启动splash命令, 初次使用将安装Splash:sudo docker run -p 8050:8050 scrapinghub/splash安装过程受网速影响, 速度较慢. 等待程序很长时间不再有动作后, 终止程序, 然后运行以下命令:3. 安装完成...原创 2018-09-02 15:05:08 · 2758 阅读 · 2 评论 -
Selenium和ChromeDriver的安装与使用
一丶Ubuntu下的安装1. Selenium的安装命令:sudo pip3 instal selenium2. ChromeDriver的安装先确保已经安装了google浏览器. 根据已安装的google浏览器的版本选则对应的版本, 如浏览器是63版本, 则选择2.34版本的ChromeDriver. ChromeDriver下载地址: http://chromedr...原创 2018-09-01 16:56:55 · 2300 阅读 · 0 评论 -
爬取Ajax类型数据
什么是Ajax?简单来说就是浏览网页时该页内容浏览完后, 只需要想下滑动, 自动出现新的内容, 而不需要刷新页面. 如浏览新浪微博. 爬取Ajax类型数据, 需要用程序模拟Ajax向服务器发送请求, 根据响应内容得到我们想要的数据.本文以今日头条为例, 作者使用Google浏览器首先登录今日头条搜索街拍(https://www.toutiao.com/search/?keyword...原创 2018-08-28 18:25:57 · 2716 阅读 · 0 评论 -
Python与MySQL数据库之间的增删查改操作
使用Python操作数据库之前, 确保已经安装好MySQL和pymysql.1. 连接数据库import pymysql#创建链接db = pymysql.connect(host='localhost', user='root', password='123456', port=3306)#获得操作游标cursor = db.cursor()#查询版本号cursor....原创 2018-06-28 16:20:30 · 2823 阅读 · 0 评论 -
Python与Mongodb数据库之间的操作
1. 安装Mongodb和pymongoMongodb的安装和配置 Mongodb的安装教程请网上搜索, 安装完成后, 安装以下配置过程: 1.1 创建目录, 该目录为Mongodb数据文件的存放目录: 注: 本人使用的不是root用户, 所以修改目录的拥有者. sudo mkdir /datasudo chown -R python:python /datamkdir /...原创 2018-07-02 20:51:29 · 6831 阅读 · 1 评论 -
Python中JSON格式与字符串转换
1. 字符串转为JSON源代码:import jsonstr = '''[{ "name": "Tom", "gender": "male"}, { "name": "Jack", "gender": "male" }]'''#将字符串转为json格式print(type(str))d原创 2018-06-27 17:11:55 · 50260 阅读 · 1 评论 -
pyquery解析库之CSS伪类选择器
下面通过代码实例展示使用pyquery解析库的伪类选择器对HTML节点操作:源代码:from pyquery import PyQuery as pyhtml = '''<div class="div1"><ul class="ul1"><li class="li1">this is li1.</li>&原创 2018-06-27 15:39:25 · 4274 阅读 · 0 评论 -
pyquery解析库进行HTML文本标签的增加和删除操作
pyquery对HTML文本增加和删除操作通过append()和remove()方法.源代码:from pyquery import PyQuery as pyhtml = '''&amp;lt;div class=&quot;div1&quot;&amp;gt;&amp;lt;li class=&quot;li1&quot;&amp;gt;this is li.&原创 2018-06-27 15:14:33 · 5398 阅读 · 0 评论 -
网络爬虫之本地代理设置
Step 1:搭建本地代理搭建本地代理借助与squid1)安装squidsudo apt-get install squid2)设置IP及端口打开配置文件:sudo vim /etc/squid/squid.conf修改内容: 定位到1598行:1598 # Squid normally listens to port 31281599 http_p...原创 2018-05-30 20:18:12 · 6180 阅读 · 0 评论 -
Spider之将请求表示为数据结构-Prepared Request
将请求的各个参数用Prepared Request数据结构表示, 简单示例:代码:from requests import Request, Sessionurl = 'http://httpbin.org/post'data = { 'name': 'gyt'}headers = { 'User-Agent': 'Mozilla/5.0 (Macintosh; ...原创 2018-06-12 20:15:54 · 4481 阅读 · 2 评论 -
Spider之忽略网站SSL证书验证
通过requests请求发起get请求:1. 未设置忽略验证import requestsresponse = requests.get('https://www.12306.cn') #设置忽略SSL验证verify=Falseprint(response.status_code)报错, 意思就是该网站没有SSL证验证书, 因为12306.cn是我国自行颁发的证书, 并没有得...原创 2018-06-12 19:15:07 · 5081 阅读 · 0 评论 -
爬取赶集网招聘信息:Python3+requsts+正则+MySQL
1. 前言本次爬虫使用:Python3requsts 请求正则解析MySQL 存储2. 爬取结果示例时间:2018年12月25日,每个类别分别爬取 1 个分页,共获取:2673条数据。(运气好,一次运行完成,IP没有被限制)3. 运行须知运行前确保MySQL中已创建相应数据库、表运行过程中很可能报错退出,最可能的原因就是访问网站过多,IP被限制,需要验证,手动使用浏览器...原创 2018-12-25 15:36:32 · 639 阅读 · 0 评论