1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#-*-coding:utf-8-*-
import urllib2
import random
url=
"http://blog.csdn.net/qysh123/article/details/44564943"
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"
,
"http://blog.csdn.net/"
)
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爬虫解决403禁止访问错误
python3 HTTP Error 403:Forbidden
Python爬虫 403解决办法
以上就是解决爬虫出现403问题的办法的详细内容,更多文章请关注木庄网络博客!!
相关阅读 >>
Python的file tell()方法使用方法及作用解析(实例)
Python如何生成马赛克画?生成马赛克画的方法(代码详解)
更多相关阅读请进入《Python》频道 >>

Python编程 从入门到实践 第2版
python入门书籍,非常畅销,超高好评,python官方公认好书。