python 爬虫出现403禁止访问错误详解


Posted in Python onMarch 11, 2017

python 爬虫解决403禁止访问错误

在Python写爬虫的时候,html.getcode()会遇到403禁止访问的问题,这是网站对自动化爬虫的禁止,要解决这个问题,需要用到python的模块urllib2模块

urllib2模块是属于一个进阶的爬虫抓取模块,有非常多的方法,比方说连接url=//3water.com/qysh123对于这个连接就有可能出现403禁止访问的问题

解决这个问题,需要以下几步骤:

<span style="font-size:18px;">req = urllib2.Request(url) 
req.add_header("User-Agent","Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36") 
req.add_header("GET",url) 
req.add_header("Host","blog.csdn.net") 
req.add_header("Referer","//3water.com/")

其中User-Agent是浏览器特有的属性,通过浏览器查看源代码就可以查看到

然后

html=urllib2.urlopen(req)


print html.read()

就可以把网页代码全部下载下来,而没有了403禁止访问的问题。

对于以上问题,可以封装成函数,供以后调用方便使用,具体代码:

#-*-coding:utf-8-*- 
 
import urllib2 
import random 
 
url="//3water.com/article/1.htm" 
 
my_headers=["Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36", 
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.153 Safari/537.36", 
"Mozilla/5.0 (Windows NT 6.1; WOW64; rv:30.0) Gecko/20100101 Firefox/30.0" 
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_2) AppleWebKit/537.75.14 (KHTML, like Gecko) Version/7.0.3 Safari/537.75.14", 
"Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Win64; x64; Trident/6.0)" 
  
] 
def get_content(url,headers): 
 ''''' 
 @获取403禁止访问的网页 
 ''' 
 randdom_header=random.choice(headers) 
 
 req=urllib2.Request(url) 
 req.add_header("User-Agent",randdom_header) 
 req.add_header("Host","blog.csdn.net") 
 req.add_header("Referer","//3water.com/") 
 req.add_header("GET",url) 
 
 content=urllib2.urlopen(req).read() 
 return content 
 
print get_content(url,my_headers)

其中用到了random随机函数,自动获取已经写好的浏览器类型的User-Agent信息,在自定义函数中需要写出自己的Host,Referer,GET信息等,解决这几个问题,就可以顺利访问了,不再出现403访问的信息。

当然如果访问频率过快的话,有些网站还是会过滤的,解决这个需要用到代理IP的方法。。。具体的自己解决

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Python 相关文章推荐
Python中的包和模块实例
Nov 22 Python
python tkinter界面居中显示的方法
Oct 11 Python
python引用(import)某个模块提示没找到对应模块的解决方法
Jan 19 Python
python制作简单五子棋游戏
Jun 18 Python
完美解决python3.7 pip升级 拒绝访问问题
Jul 12 Python
Python合并2个字典成1个新字典的方法(9种)
Dec 19 Python
Python for循环与getitem的关系详解
Jan 02 Python
Python切割图片成九宫格的示例代码
Mar 10 Python
django 外键创建注意事项说明
May 20 Python
Django windows使用Apache实现部署流程解析
Oct 12 Python
Selenium获取登录Cookies并添加Cookies自动登录的方法
Dec 04 Python
python not运算符的实例用法
Jun 30 Python
Python如何读取MySQL数据库表数据
Mar 11 #Python
python3.5 + PyQt5 +Eric6 实现的一个计算器代码
Mar 11 #Python
Python搭建HTTP服务器和FTP服务器
Mar 09 #Python
开源Web应用框架Django图文教程
Mar 09 #Python
Python运算符重载详解及实例代码
Mar 07 #Python
利用Python中的pandas库对cdn日志进行分析详解
Mar 07 #Python
python下os模块强大的重命名方法renames详解
Mar 07 #Python
You might like
十天学会php之第一天
2006/10/09 PHP
PHP小教程之实现双向链表
2014/06/12 PHP
新浪SAE云平台下使用codeigniter的数据库配置
2014/06/12 PHP
Extjs EditorGridPanel中ComboBox列的显示问题
2011/07/04 Javascript
js String对象中常用方法小结(字符串操作)
2012/01/27 Javascript
jquery更换文章内容与改变字体大小代码
2013/09/30 Javascript
JavaScript 语言基础知识点总结(思维导图)
2013/11/10 Javascript
原生javaScript实现图片延时加载的方法
2014/12/22 Javascript
js模仿php中strtotime()与date()函数实现方法
2015/08/11 Javascript
jquery+html5烂漫爱心表白动画代码分享
2015/08/24 Javascript
JS for循环中i++ 和 ++i的区别介绍
2016/07/20 Javascript
JS声明式函数与赋值式函数实例分析
2016/12/13 Javascript
微信小程序 详解Page中data数据操作和函数调用
2017/01/12 Javascript
thinkjs之页面跳转同步异步操作
2017/02/05 Javascript
vue+canvas实现炫酷时钟效果的倒计时插件(已发布到npm的vue2插件,开箱即用)
2018/11/05 Javascript
[06:15]2016国际邀请赛中国区预选赛单车采访:我顶WINGS
2016/06/27 DOTA
[51:29]Alliance vs TNC 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
实例讲解Python中函数的调用与定义
2016/03/14 Python
Python如何生成树形图案
2018/01/03 Python
Python基于聚类算法实现密度聚类(DBSCAN)计算【测试可用】
2018/12/26 Python
python 并发编程 多路复用IO模型详解
2019/08/20 Python
Python‘==‘ 及 ‘is‘相关原理解析
2020/09/05 Python
纯CSS绘制漂亮的圆形图案效果
2014/05/07 HTML / CSS
美国男女折扣服饰百货连锁店:Stein Mart
2017/05/02 全球购物
Steiff台湾官网:德国金耳釦泰迪熊
2019/12/26 全球购物
SQL Server 2000数据库的文件有哪些,分别进行描述。
2015/11/09 面试题
应届生污水处理求职信
2013/11/06 职场文书
物流专业毕业生推荐信范文
2013/11/18 职场文书
清洁工表扬信
2014/01/08 职场文书
我的画教学反思
2014/04/28 职场文书
员工试用期自我评价
2014/09/18 职场文书
项目备案申请报告
2015/05/15 职场文书
2015年小学体育教师工作总结
2015/10/23 职场文书
初中物理教学反思
2016/02/19 职场文书
唤醒紫霞仙子,携手再游三界!大话手游X《大话西游》电影合作专属剧情任务
2022/04/03 其他游戏
Win11电源已接通但未充电怎么办?Win11电源已接通未充电的解决方法
2022/04/05 数码科技