问题标签 [urlopen]

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 回答
188 浏览

python - 如何让 Python 中的 urlopen 命令放弃并继续前进?

我正在编写一个Python 2.7下载网页的脚本。大多数时候,一切都按计划进行。鉴于此脚本有数千个网页可供下载,因此不可避免地会出现几次不成功的情况。URLError如果出现 a或 an ,脚本会放弃并继续前进HTTPError,但有时一切都会挂起,需要手动点击Ctrl-ZCtrl-C停止。有问题的代码:

我试过signal.alarm了,但它并不总是有效。我尝试了urlopen中的超时参数,但这不起作用。

是否有可靠的方法来确保脚本在一定秒数后自动放弃并继续前进?我应该使用 urlopen 以外的东西吗?

0 投票
3 回答
9984 浏览

python - 使用 urllib2 加载 URL 时如何设置 TCP_NODELAY 标志?

我正在使用 urllib2 加载网页,我的代码是:

如何获取要设置的套接字属性TCP_NODELAY

在普通套接字中,我将使用函数:

0 投票
2 回答
5006 浏览

http - 使用 Python 2.7.3 的 HTTP 请求

我有一个字符串 结果这个字符串是URL www.test.com

我知道 www.test.com 上有一个编号为4的网站。我会将程序中的数字保存为整数。

但我只收到:

无线没问题,我有互联网连接。

0 投票
1 回答
749 浏览

python - 加载 https json 文件时 Ubuntu 中的 urllib2 python 异常

我正在尝试加载一个 json 文件,但它抛出了一个异常:

这是我的代码(我在 shell 上执行它以进行测试/调试):

我正在使用在 VMWare 上虚拟化的 Ubuntu 12.04(64 位)Bitnami 的 Django Stack 1.4.3-0。

但是,我很好奇,并在我的主机(Windows 7 64 位)上尝试了相同的代码,我也安装了相同版本的 python,猜猜是什么......它完美地工作。

这是窗口输出:

如何在 Ubuntu 中解决此问题?我尝试更改请求中的用户代理和内容,但结果在 Ubuntu 上始终相同。

还尝试手动复制 json 文件并将其上传到保管箱并运行与上述相同的代码,但使用保管箱 url 并且它在两个系统上都可以完美运行。

希望你们能帮助我,这让我发疯了,我的整个项目都依赖于那个该死的 api :(

在此先感谢,并为我糟糕的英语感到抱歉。

0 投票
2 回答
2153 浏览

python - 将 gevent 与金字塔一起使用

我正在使用金字塔建立一个网站,我想从其他网站获取一些数据。因为可能有 50+ 的调用urlopen,所以我想使用 gevent 来加快速度。

这是我到目前为止使用 gevent 得到的结果:

运行pserve development.ini --reload给出:

NotImplementedError: gevent is only usable from a single thread.

我已经读到我需要先修补猴子补丁,但我不确定合适的地方在哪里。另外,这是特定于 pserve 的问题吗?当我搬到mod_wsgi时,我需要重新解决这个问题吗?或者有没有办法在没有 gevent 的情况下处理这个用例(只是 urlopen)?我已经看到了有关请求的建议,但我在文档中找不到获取多个页面的示例。

更新1:

我还尝试了这个 SO question中的 eventlet (几乎直接从这个 eventlet示例中复制):

但是,当我打电话时fetch_multiple,我得到了TypeError: request() got an unexpected keyword argument 'return_response'

更新 2:

之前的TypeError更新可能是因为之前尝试使用 gevent 进行monkeypatch 并且没有正确重新启动 pserve。一旦我重新启动一切,它就可以正常工作。学过的知识。

0 投票
3 回答
2198 浏览

python - urlopen 出错:在未引用的字段中看到换行符

我正在使用带有 Python 2.7 的 urllib.urlopen 来读取位于外部网络服务器上的 csv 文件:

所有 100 多个文件都可以正常读取,但最近更新并返回的文件除外:

该文件可在此处访问。根据我的文本编辑器,它的模式是 Mac (CR),而不是其他文件的 Windows (CRLF)。

我发现基于这个线程,python urlopen 将正确处理所有格式的换行符。因此,问题很可能来自其他地方。不过我不知道。该文件可以使用我的所有文本编辑器和电子表格编辑器正常打开。

有谁知道如何诊断问题?

* 编辑 *

该文件的创建者通过电子邮件通知我,我不是唯一遇到此类问题的人。因此,他决定再做一次。上面的代码现在又可以正常工作了。不幸的是,使用新文件也意味着无法再重现该问题,并且解决方案已正确测试。

在结束问题之前,我要感谢所有花费一些时间来找出解决方案并将其发布在此处的堆垛机。

0 投票
2 回答
8286 浏览

python - 有没有办法使用 Python 抓取亚马逊产品列表页面?

我正在尝试抓取显示特定产品的供应商和价格的产品列表页面,但 urllib.urlopen 不起作用 - 它可以在亚马逊上的所有其他页面上工作,但我有点想知道亚马逊的机器人是否阻止在产品列表页面上抓取。任何人都可以验证这一点吗?使用 Chrome 我仍然可以查看页面源...

这是我想要抓取的产品列表页面示例:http ://www.amazon.com/gp/offer-listing/B007E84H96/ref=dp_olp_new?ie=UTF8&condition=new

0 投票
2 回答
1720 浏览

python - urllib2.openurl 不适用于 Google 专利

我正在尝试从谷歌专利中抓取一些数据,我的代码开头如下所示:(是下面列出的 url 的超链接)

这会引发错误消息:

不知道为什么我会得到这个。

编辑:

尝试它urllib.openurl让我更进一步:

完整的错误消息显示在此图像中。

错误消息的快照

0 投票
2 回答
4054 浏览

python - 尝试使用 python 访问 Google 专利时出现 503 错误

今天早些时候,我能够使用下面的代码从谷歌专利中提取数据

现在,当我运行它时,我收到以下 503 错误。我只在上面循环了这段代码 30 次(我试图获得 30 个人拥有的所有专利)。

0 投票
0 回答
877 浏览

python - 使用 urlopen(IP).read() 获取 http.client.BadStatusLine

我试图读取的数据是 xml 格式。xml 声明前有一个空格。我无法编辑这部分,因为它被硬编码到数据源中。我只能从中读取。当在 IE 中输入 url 时,数据就会出现。在 Chrome/Firefox 中输入时,会显示错误,但可以从查看源查看数据。

python有没有办法像IE一样去掉这个空间或者忽略它?

(尝试strip()在很多地方添加)

或者有没有办法默认页面源(我认为 urlopen 已经这样做了)?

这是给出错误的行:

这是错误: