Python学习三: 爬虫高级技巧 与 模拟实战练习

三大爬虫技巧

许多网站针对爬虫的访问都设置了一定的障碍,通过这三步技巧,轻松绕过部分的反爬虫限制。

(1)设置程序休止时间

import time
import random

# 休止睡眠 1 秒 这里秒可自定义
time.sleep(1);
# 随机休眠0或者1秒
random.random();
# 随机休眠1或者5秒
time_interval = random .uniform(1,5) 
time.sleep(time_interval)

(2)设置代理

设置代理,代理IP又分三种代理ID:

  1. 低级别(Transparent Proxy) :服务器知道你在使用代理,且知道你的真实IP
  2. 中级别(AnonyMous Proxy) :服务器知道你在使用代理,但不知道你的真实IP
  3. 高级别(Elite Proxy / Highly AnonyMous Proxy):服务器不知道你在使用代理

代理服务器的存在,可以应对网站禁止某个IP访问的反爬虫措施,代理服务器有着不同的匿名类型,通常我们会挑选中、高级别的代理服务器来访问网页。

#使用urllib.request的两个方法进行代理的设置
proxy = urlrequest.ProxyHandler({'https':'24.245.100.212:48678'});
opener = urlrequest.build_opener(proxy);

这里我常用的是 小幻HTTP代理

因为是免费IP,如果不使用请不要长时间占用。

(3)伪装浏览器访问

我们使用Python编码进行数据爬取时,网站是可以识别你是否在使用Python进行爬取,需要你在发送网络请求时,把header部分通过Pyton伪装成浏览器的 User-Agent 的信息。

# 伪装浏览器访问
opener.addheaders = [('User-Agent','Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/10.1 Safari/603.1.30')]
urlrequest.install_opener(opener)

至于 User-Agent 的信息请自行百度。

练习一:Place Pulse Google街景图爬取

首先,我使用的是外网的一个统计页面,统计出的数据集,这个页面会从谷歌地图中抓取两个街景,并进行对比提问,比如这两张图片中你认为那个更富有.....之类的提问。(PLACE PULSE

这里如果打不开这个网站,我把数据集上传到CSDN:PLACE_PULSE_PP2_placepulse2.0-数据库文档类资源-CSDN下载

链接:https://pan.baidu.com/s/1hbHWKBWquGKTzz3li8Yk6w 
提取码:7uo2

import urllib.request as urlrequest
import time
import random

# 载入包,定义存储目录,连接API
IMG_PATH = "./img/{}.jpg";
# 数据集
DAT
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值