jjzjj

python - 无法使用 Python 的 mock.patch 模拟 urllib2.urlopen

下面是我的api.py模块的代码片段#-*-coding:utf-8-*-fromurllib2importurlopenfromurllib2importRequestclassAPI:defcall_api(self,url,post_data=None,header=None):is_post_request=Trueif(post_dataandheader)elseFalseresponse=Nonetry:ifis_post_request:url=Request(url=url,data=post_data,headers=header)#Callingapiapi_re

python - 如何在 Python 中使用 urllib2 的 urlopen 关闭超时的 http POST?

概览我正在使用Python2.7.1urllib2包中的urlopen从WindowsXP机器到远程Apache网络服务器(例如MacOSX的内置网络共享)执行HTTPPOST。发送的数据包含一些标识符、数据和校验和,如果发送了所有数据,服务器将以确认响应。数据中的校验和可用于检查所有内容是否按顺序到达。问题通常这很好用,但有时互联网连接不好,通常是因为发送数据的客户端使用wifi或3G连接。这会导致互联网连接丢失一段时间。urlopen包含一个超时选项,以确保这不会阻止您的程序并且它可以继续。这就是我想要的,但问题是urlopen不会阻止套接字继续发送超时发生时仍必须发送的任何数据。

Python Web 抓取 - urlopen 错误 [Errno -2] 名称或服务未知

我正在尝试从CivicCommonsApps中提取数据我的项目的链接。我能够获得我需要的页面的链接。但是,当我尝试打开链接时,出现“urlopenerror[Errno-2]Nameorservicenotknown”网页抓取python代码:frombs4importBeautifulSoupfromurlparseimporturlparse,parse_qsimportreimporturllib2importpdbbase_url="http://civiccommons.org"url="http://civiccommons.org/apps"page=urllib2.ur

python - 关闭使用 urllib2.urlopen() 正确打开的文件

我在python脚本中有以下代码try:#sendthequeryrequestsf=urllib2.urlopen(search_query)search_soup=BeautifulSoup.BeautifulStoneSoup(sf.read())sf.close()exceptException,err:print("Couldn'tgetprogrammeinformation.")print(str(err))return我很担心,因为如果我在sf.read()上遇到错误,则不会调用sf.clsoe()。我尝试将sf.close()放在finallyblock中,但如果ur

python - 将列表作为 url 值传递给 urlopen

动机受thisproblem启发-OP使用urlopen()并意外传递了sys.argv列表而不是字符串作为url。抛出此错误消息:AttributeError:'list'objecthasnoattribute'timeout'由于urlopen的编写方式,错误消息本身和回溯信息不是很丰富,可能难以理解,尤其是对于Python新手:Traceback(mostrecentcalllast):File"test.py",line15,inget_category_links(sys.argv)File"test.py",line10,inget_category_linksrespo

python - 导入错误 : cannot import name urlopen

我正在尝试为我的项目打开一个URL,这是我的代码:fromurllib2importurlopenpage=urlopen("https://docs.python.org/3/howto/urllib2.html")contents=page.read()这只是一个简单的演示代码,但是,当我运行代码时,出现以下错误"ImportError:cannotimportnameurlopen"我尝试在CMD中输入“pipinstallurllib2”,但也出现了以下错误“找不到满足urllib2要求的版本...找不到urllib2的匹配分布”我使用的是python2.7.12而不是pyth

python - urllib2.urlopen() : getting the size of the content

只要工作允许,我仍然会围绕python工作......我正在使用使用urllib2.urlopen的脚本查询大量内部webUI。我想知道如何从每个请求中获取页面内容的大小。我似乎无法弄清楚这一点。提前致谢MHibbin 最佳答案 printlen(urlopen(url).read())或>>>result=urllib2.urlopen('http://www.spiegel.de')>>>result.headers['content-length']'181291' 关于pytho

python - Urllib.urlopen() 在一台机器上使用 Python 2.6.6 处理 SSLv3 url,但在另一台机器上不能使用 2.6.7/2.7.2

为此花了一天的大部分时间,我真的束手无策。我有一台机器“A”安装了Python2.6.6/2.7.2,另一台机器“B”安装了Python2.6.7/2.7.2。在机器A上,我可以使用Python2.6通过urllib2.urlopen('https://fed.princeton.edu')获得一个SSLv3加密的网站。6但不是2.7.2。在机器B上,我无法使用任一Python版本获取该网站。通过无法获取,我的意思是我获取错误:Traceback:File"/usr/local/lib/python2.7/dist-packages/Django-1.3.1-py2.7.egg/dja

python - Urllib 的 urlopen 在某些站点上中断(例如 StackApps api): returns garbage results

我正在使用urllib2的urlopen函数尝试从StackOverflowapi获取JSON结果。我使用的代码:>>>importurllib2>>>conn=urllib2.urlopen("http://api.stackoverflow.com/0.8/users/")>>>conn.readline()我得到的结果:'\x1f\x8b\x08\x00\x00\x00\x00\x00\x04\x00\xed\xbd\x07`\x1cI\x96%&/m\xca{\x7fJ\...我是urllib的新手,但这似乎不是我应该得到的结果。我已经在其他地方尝试过了,我得到了我所期望的结果

python - urllib HTTPS 请求 : <urlopen error unknown url type: https>

我在python3.4上有一个脚本,它一直很好,直到我从中下载文件的网站决定使用https,现在我收到错误但无法弄清楚如何检索文件。我的脚本导入以下库并使用urlretrive获取先前的文件。因为它现在通过302重定向转发到https。我遇到了一些错误。importurllibimporturllib.requesturllib.request.urlretrieve("http://wordpress.org/latest.tar.gz","/thefile.gz")我的错误:-Traceback(mostrecentcalllast):File"",line1,inFile"/us