pythonpython3 urllib22 页面请求返回不正确,怎么解决

python 中urllib2.request(url)为什么同一个url有时候返回成功有时候返回失败_百度知道
python 中urllib2.request(url)为什么同一个url有时候返回成功有时候返回失败
//a.Request(&#39.vpimg1, e.urlopen(req)
print &#39:
urllib2代码如下所示.com/upload/brand/76617, HTTPErrorimport urllib2req = urllib2;)try, urlopen://a;'ok&#39:
print e:from urllib2 import Request, /upload/brand/76617
可能是网络问题可能是太过频繁可能是目标服务器问题
其他类似问题
为您推荐:
python的相关知识
其他2条回答
服务器当然会限制你的并发什么的 要不怎么负载这些
可能是服务器忙不过来也可能是网络超时
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁Python网页抓取urllib,urllib2,httplib1
前阶段使用到ftp,写了个工具脚本http://blog.csdn.net/wklken/article/details/7059423
最近需要抓网页,看了下python抓取方式
抓取网页,解析获取内容
urllib&&&http://docs.python.org/library/urllib.html
urllib2&&http://docs.python.org/library/urllib2.html
httplib &&http://docs.python.org/library/httplib.html
使用urllib:
1.&&&&&&抓取网页信息
urllib.urlopen(url[, data[, proxies]]) :
url: 表示远程数据的路径
data: 以post方式提交到url的数据
proxies:用于设置代理
urlopen返回对象提供方法:
-&&&&&&&&&read() , readline() ,readlines() , fileno() , close() :这些方法的使用方式与文件对象完全一样
-&&&&&&&&&info():返回一个httplib.HTTPMessage对象,表示远程服务器返回的头信息
-&&&&&&&&&getcode():返回Http状态码。如果是http请求,200请求成功完成;404网址未找到
-&&&&&&&&&geturl():返回请求的url
#!/usr/bin/python
# -*- coding:utf-8 -*-
# urllib_test.py
# author:wklken
wklken#yeah.net
import urllib
def use_urllib():
import urllib, httplib
httplib.HTTPConnection.debuglevel = 1
page = urllib.urlopen(url)
print &status:&, page.getcode() #200请求成功,404
print &url:&, page.geturl()
print &head_info:\n&,
print &Content len:&, len(page.read())
附带的其他方法:(主要是url编码解码)
-&&&&&&&&&urllib.quote(string[,&safe]):对字符串进行编码。参数safe指定了不需要编码的字符
-&&&&&&&&&urllib.unquote(string)&:对字符串进行解码
-&&&&&&&&&&urllib.quote_plus(string&[&,&safe&]&)&:与urllib.quote类似,但这个方法用'+'来替换'&',而quote用'%20'来代替'&'
-&&&&&&&&&&urllib.unquote_plus(string&)&:对字符串进行解码
-&&&&&&&&&urllib.urlencode(query[,&doseq]):将dict或者包含两个元素的元组列表转换成url参数。例如&字典{'name':&'wklken',&'pwd': '123'}将被转换为&name=wklken&pwd=123&
-&&&&&&&&&urllib.pathname2url(path):将本地路径转换成url路径
-&&&&&&&&&&urllib.url2pathname(path):将url路径转换成本地路径
def urllib_other_functions():
astr = urllib.quote('this is &K&')
print astr
print urllib.unquote(astr)
bstr = urllib.quote_plus('this is &K&')
print bstr
print urllib.unquote(bstr)
params = {&a&:&1&, &b&:&2&}
print urllib.urlencode(params)
l2u = urllib.pathname2url(r'd:\a\test.py')
print urllib.url2pathname(l2u)
2. &下载远程数据
urlretrieve方法直接将远程数据下载到本地
urllib.urlretrieve(url[,&filename[,&reporthook[,&data]]]):
filename指定保存到本地的路径(若未指定该,urllib生成一个临时文件保存数据)
reporthook回调函数,当连接上服务器、以及相应的数据块传输完毕的时候会触发该回调
data指post到服务器的数据
该方法返回一个包含两个元素的元组(filename,&headers),filename表示保存到本地的路径,header表示服务器的响应头。
callback_f(downloaded_size, block_size, romote_total_size):
per = 100.0 * downloaded_size * block_size / romote_total_size
if per & 100:
print &%.2f%%&% per
def use_urllib_retrieve():
import urllib
local = os.path.join(os.path.abspath(&./&), &a.html&)
print local
urllib.urlretrieve(url,local,callback_f)
下一篇:httplib
转载请注明出处:http://blog.csdn.net/wklken
更多相关文章
上一篇使用urllib抓取
Python网页抓取urllib,urllib2,httplib[1] 使用httplib抓取: 表示一次与服务器之间的交互,即请求/响应 httplib.HTTPConnection ( host [ , port [ ,strict [ , timeout ]]]
使用urllib2,太强大了 试了下用代理登陆拉取cookie,跳转抓图片...... 文档:http://docs.python.org/library/urllib2.html
直接上demo代码了 包括:直接拉取,使用Reuqest(post/get),使用代理,cookie,跳转处理 #! ...
POST参数可以使用chorm或fireforx+httpfox来获取 本文主要用python实现了对网站的模拟登录.通过自己构造post数据来用Python实现登录过程. 当你要模拟登录一个网站时,首先要搞清楚网站的登录处理细节(发了什么样的数据,给谁发等...). 我是通过HTTPfox来抓取h ...
#-*-coding:utf-8-*- import os import uuid import urllib2 import cookielib '''获取文件后缀名''' def get_file_extension(file): return os.path.splitext(file)[1] ...
本程序使用Python 2.7.6编写,扩展了Python自带的HTMLParser,自动根据预设的股票代码列表,从Yahoo Finance抓取列表中的数据日期.股票名称.实时报价.当日变化率.当日最低价.当日最高价. 由于Yahoo Finance的股票页面中的数值都有相应id. 例如纳斯达克1 ...
本程序使用Python 2.7.6编写,扩展了Python自带的HTMLParser,自己主动依据预设的股票代码列表,从Yahoo Finance抓取列表中的数据日期.股票名称.实时报价.当日变化率.当日最低价.当日最高价. 因为Yahoo Finance的股票页面中的数值都有对应id. 比如纳斯达 ...
1 #!/usr/bin/python 使用魔法字符调用python 2
3 from sys import argv
导入sys是导入python解释器和他环境相关的参数 4 from os import makedirs,unlink,sep os主要提供对系统路径,文件重命名和删除文件所需 ...
,前两节好像和python没多大关系..这节完全是贴代码,
这是我第一次写python,很多地方比较乱,主要就看看逻辑流程吧.
对于编码格式确实搞得我头大..取下来页面不知道是什么编码,所以先找charset,然后转unicode.统一在unicode下操作,但是数据库是utf8的,WIND ...
引领大数据连接.传送以及存储,提供创新半导体及软件解决方案的PMC公司(纳斯达克代码:PM ...
armv 是指令集的意思,偏硬件.目前iphone5支持armv7s. The iPhone 5 will ship with and only run iOS 6.0. To coincide with the l ...
重开发者的劳动成果,转载的时候请务必注明出处:http://blog.csdn.net/h ...
android.view.View类是全部UI组件的父类. 如果一些属性的内容本类找不到的时候一定要到父类之中进行查找. 所谓的学习组件的过程就是一个文档的查找过程. ※ Android之中所有的组件都是View类的 ...
整理了以下四种在MySQL中修改root密码的方法,可能对大家有所帮助! 方法1: 用SET PASSWORD命令 mysql -u root mysql& SET PASSWORD FOR 'root'@'l ...
linux(centos 5.5) 系统磁盘不够用,新增一块硬盘sdb 在分区中出现了问题 # fdisk -l # fdisk /dev/sdb Command (m for help): n Command ac ...
本文介绍怎样使用Flex数据推送实现前台消息订阅,是在前面Flex+BlazeDS+Spring整合基础上进行的,利用Spring来简化配置.环境准备:
1.完成Fle ...
主要内容 1.
Django框架发展 2.
Django架构,MTV模式 3.
开发流程 4.
开发实例--Poll python下各种框架 一个完整的Web应 ...
题目链接:http://acm./showproblem.php?pid=4192
题意:给以一个表达式,要你求表达式是否成立.
典型的中缀表 ...
前言原创文章,欢迎转载,请保留出处. 有任何错误.疑问或者建议,欢迎指出. 我的邮箱:Ma ...使用 python urllib2 抓取网页时出现乱码的解决方案 | 云淡风轻

我要回帖

更多关于 urllib2 get请求 的文章

 

随机推荐