使用Python获取Wikipedia 的url时出现“ERR_ACCESS_DENIED”怎么办? - emy_yu - 博客园

使用Python获取Wikipedia 的url时出现“ERR_ACCESS_DENIED”怎么办? - emy_yu - 博客园

最近想用中文维基百科的一些文章进行文本分析,于是想爬一些有用的网页下来。起初找了个叫teleport pro的软件,但几经周折还是没找到方法下载指定层的文本(图片可以),而且下下来很多没用的插件,甚是复杂(网上有人说可以实现,但至今未研究明白,还请高手指点!)。于是用python写了段代码获取指定url的网页。这也是第一次接触urllib等库的使用。

代码如下(Linux 下 Python 2.6):

1 # coding=utf-8
2 
3 import urllib
4 
5 url='http://zh.wikipedia.org/wiki/Wikipedia:%E5%84%AA%E8%89%AF%E6%A2%9D%E7%9B%AE'
6 loca='/home/yxl/work/crawingpage/wiki.html'
7 
8 urllib.urlretrieve(url,loca)
复制代码

但每次获得的网页都是无法进入该网页的错误信息,返回的网页内容如下:

于是在网上找到了这样一个产生类似问题的帖子,解答说可以用urllib2 加上headers可以解决:

于是我把代码修改后:

 1 # coding=utf-8
 2 
 3 import urllib2
 4 
 5 url='http://zh.wikipedia.org/wiki/Wikipedia:%E5%84%AA%E8%89%AF%E6%A2%9D%E7%9B%AE'
 6 loca='/home/yxl/work/crawingpage/wiki.html'
 7 
 8 opener = urllib2.build_opener()
 9 opener.addheaders = [('User-agent', 'Mozilla/5.0')]
10 urldata = opener.open(url)
11 f=file(loca,'w')
12 m=urldata.read()
13 print>>f,m
复制代码
posted on 2012-03-18 08:54  lexus 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/lexus/archive/2012/03/18/2404307.html

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值