问题标签 [urllib]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
734 浏览

python - 循环浏览网络上的目录并通过 Python 显示其内容(文件和其他目录)

与在 Python 中处理从源目录到目标目录的一组文件一样,我想知道是否可以创建一个函数,当给定一个 web 目录时,它将列出所述目录中的文件。就像是...

我假设我需要使用 urllib 库,但似乎没有一种简单的方法可以做到这一点,至少我见过。

0 投票
2 回答
9914 浏览

python - Python 2.6 -> Python 3 (ProxyHandler)

我写了一个与代理一起工作的脚本(py2.6x):

但是在 py3.11x 中没有 urllib2 只是一个 urllib ......而且不支持 ProxyHandler

如何在 urllib 中使用代理?Python 3 不是比 Python 2 更新吗?为什么他们在较新的版本中删除了 urllib2?

0 投票
5 回答
28545 浏览

python - 为什么我不能让 Python 的 urlopen() 方法在 Windows 上工作?

为什么这个简单的 Python 代码不起作用?

这是我得到的错误:

我已经尝试了几个不同的页面,但我永远无法urlopen正确执行该方法。

0 投票
2 回答
1489 浏览

python - 尝试使用 Python 3.1、urllib 和 json 打开网站 url 时出现错误:尝试对不是套接字的东西进行操作

尝试使用 Python 3.1、urllib 和 json 打开网站 url 时出现错误

urllib.error.URLError:

这是代码。第一个网站加载正常。第二个

urllib.error.URLError:

文件“c:\dev\xdev\PyJigsaw\searchContact.py”,第 46 行,结果 = json.load(urllib.request.urlopen(jg_url))

文件“c:\dev\tdev\Python31\Lib\urllib\request.py”,第 121 行,在 urlopen 返回 _opener.open(url, data, timeout)

文件“c:\dev\tdev\Python31\Lib\urllib\request.py”,第 349 行,打开响应 = self._open(req, data)

文件“c:\dev\tdev\Python31\Lib\urllib\request.py”,第 367 行,在 _open '_open',req)

文件“c:\dev\tdev\Python31\Lib\urllib\request.py”,第 327 行,在 _call_chain 结果 = func(*args)

文件“c:\dev\tdev\Python31\Lib\urllib\request.py”,第 1098 行,在 https_open 返回 self.do_open(http.client.HTTPSConnection, req)

文件“c:\dev\tdev\Python31\Lib\urllib\request.py”,第 1075 行,在 do_open 中引发 URLError(err)

0 投票
1 回答
1002 浏览

python - Urllib 的 urlopen 在某些网站(例如 StackApps api)上中断:返回垃圾结果

我正在使用urllib2'surlopen函数尝试从 StackOverflow api 获取 JSON 结果。

我正在使用的代码:

我得到的结果:

我对 urllib 还很陌生,但这似乎不是我应该得到的结果。我已经在其他地方尝试过,我得到了我的期望(就像用浏览器访问地址给我一样:一个 JSON 对象)。

urlopen在其他网站(例如“ http://google.com ”)上使用效果很好,并给了我实际的 html。我也尝试过使用urllib,它给出了相同的结果。

我很困惑,甚至不知道在哪里可以解决这个问题。有任何想法吗?

0 投票
20 回答
388235 浏览

python - 通过urllib和python下载图片

所以我正在尝试制作一个 Python 脚本来下载网络漫画并将它们放在我桌面上的一个文件夹中。我在这里找到了一些类似的程序,它们做类似的事情,但与我需要的完全不同。我发现最相似的一个就在这里(http://bytes.com/topic/python/answers/850927-problem-using-urllib-download-images)。我尝试使用此代码:

然后我在我的电脑上搜索了一个文件“00000001.jpg”,但我发现的只是它的缓存图片。我什至不确定它是否将文件保存到我的计算机上。一旦我了解了如何下载文件,我想我就知道如何处理其余的了。基本上只是使用for循环并将字符串拆分为'00000000'.'jpg'并将'00000000'增加到最大数字,我必须以某种方式确定。有关执行此操作的最佳方法或如何正确下载文件的任何建议?

谢谢!

编辑 6/15/10

这是完成的脚本,它将文件保存到您选择的任何目录。出于某种奇怪的原因,文件没有下载,它们只是下载了。任何有关如何清理它的建议将不胜感激。我目前正在研究如何找出网站上存在的许多漫画,这样我就可以获得最新的漫画,而不是在引发一定数量的异常后退出程序。

0 投票
4 回答
15522 浏览

python - Python 2 与 Python 3 - urllib 格式

我真的厌倦了试图弄清楚为什么这段代码在 Python 2 中而不是在 Python 3 中有效。我只是想抓取一页 json 然后解析它。这是 Python 2 中的代码:

认为Python 3 中的等效代码是这样的:

但它在我面前爆炸了,因为 read() 返回的数据是“字节”类型。但是,我一辈子都无法将它转换为 json 能够解析的东西。我从标题中知道 reddit 正试图将 utf-8 发送回给我,但我似乎无法将字节解码为 utf-8:

我究竟做错了什么?

编辑:问题是我无法使数据进入可用状态;即使 json 加载数据,它的一部分是无法显示的,我希望能够将数据打印到屏幕上。

第二次编辑:问题似乎更多地与打印而不是解析有关。Alex 的回答通过将 IO 设置为 utf8 为脚本在 Python 3 中工作提供了一种方法。但是仍然存在一个问题:为什么代码在 Python 2 中有效,而在 Python 3 中无效?

0 投票
2 回答
6299 浏览

python - 让 urllib 重试多次

urllib2我的 Python 应用程序使用该模块发出大量 HTTP 请求。此应用程序可能用于非常不可靠的网络,其中延迟可能很低,丢包和网络超时可能很常见。是否可以覆盖模块的一部分,urllib2以便在引发任何异常之前重试每个请求 X 次?有没有人见过这样的东西?

我可以在不修改我的整个应用程序并且只在urllib2模块上创建一个包装器的情况下实现这一点吗?因此,任何使用此模块的代码生成请求都会自动使用重试功能。

谢谢。

0 投票
1 回答
907 浏览

xml - 带有 SSL IO 错误的 Django 请求 XML 文件

我正在制作一个 Django 网站,而且还很新。在这个 web 应用程序中,我需要使用这个 API,它将从数据库中输出一个包含请求数据的 xml 文件。API URL 基本上是:

https://adminuser:password@url.to.database.com/database.getdata?arg=1&arg2=0

所以在我的 python views.py 我有:

我从http://www.webmonkey.com/2010/02/integrate_web_apis_into_your_django_site/

但是,我在该行收到以下错误usock = u.open(url)

我在urllib文档中读到,如果无法建立连接,则会引发 IOError。 http://docs.python.org/library/urllib.html 此外,在 Wikipedia 上,“Bad record MAC”致命警报意味着“可能是错误的 SSL 实现,或者有效负载已被篡改。例如,FTPS 服务器上的 FTP 防火墙规则。”

但我不明白的是,当我将 URL 粘贴到浏览器中时,它可以正常工作并吐出一个 XML 文件。

我还认为(从长远来看)它可能是我的 Apache 安装,所以我通过输入终端检查了 mod_ssl 是否正在加载,apachectl -t -D DUMP_MODULES并且它是作为共享加载的。

任何想法将不胜感激。谢谢!

0 投票
1 回答
625 浏览

python - 帮助 HTML 解析和向 Web 服务器发送请求

我正在做一个小项目,但遇到了一个小问题。我的脚本需要获取一个网站并在源 HTML 文件中找到一个特定值。值是这样的:

现在我一直在尝试使用 ElementTree 库来解析 HTML 文档以查找值,但我并没有很成功。我对 Python 很陌生,所以我真的不知道下一步该做什么。

我一直在使用 httplib 和 urllib/urllib2 连接到网站并发布我的登录详细信息等,但我真的不知道如何从页面中获取该值。我以为我可以发送一个名为“hash”的输入请求,但我不知道该怎么做。