问题标签 [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 回答
1120 浏览

python - 为什么从页面中检索到的文本有时看起来像乱码?

我在 Python 中使用 urllib 和 urllib2 来打开和阅读网页,但有时,我得到的文本是不可读的。例如,如果我运行这个:

我得到一些不可读的文本。我读过这些帖子:

来自 urlopen 的乱码

python urllib2 会自动解压缩从网页获取的 gzip 数据吗?

但似乎找不到我的答案。

预先感谢您的帮助!


更新:我通过“说服”服务器我的用户代理是浏览器而不是爬虫来解决问题。

谢谢大家的回复。

0 投票
2 回答
935 浏览

python - Python:带有 urllib.urlopen 的 KeyError/IOError

我正在尝试将一些文本传递给这个可读性 API,如下所示:

我在最后一行得到了这个错误:

[Errno 2] 没有这样的文件或目录:'http://ipeirotis.appspot.com/readability/GetReadabilityScores?format=json&text=this+reminds+me+of+the+Dutch+2001a+caravan+full+of+smoky +人+Auld+Lang+Syne'

但是,错误中的 URL 是有效的,并在您访问它时返回响应。如何对 URL 进行编码以便可以使用 urlopen?非常感谢。

0 投票
1 回答
861 浏览

python - 超时后 urlopen 调用未终止

在 Python 2.4.4 中,我urllib2.urlopen()用于请求资源。在发出请求之前,我设置了一个超时:

(这个版本的 Python 太旧了,没有urlopen()内置超时的版本。)

在大多数情况下,这似乎工作正常。但是,我遇到了一个仅应请求挂起的服务器。在 Chrome 中,大约需要 5 分钟,浏览器才会放弃并说:

谷歌浏览器无法加载网页,因为 SERVERNAME 响应时间过长。该网站可能已关闭,或者您的 Internet 连接可能出现问题。

在 Python 中urlopen,尽管设置了短暂的超时,但请求似乎无限期挂起。究竟socket.setdefaulttimeout()控制什么,有没有办法对这些连接强制执行硬超时(如果 10 秒过去了,不管发生了什么,终止尝试)?

0 投票
1 回答
304 浏览

python - CURL 和 urlopen 给出冲突的结果

所以我正在从网站检索一些 JSON 数据并使用来自 urllib2 的标准 urlopen():

代码:

结果:

这个结果是错误的。如果我在浏览器中手动输入网址:

输入:

我得到:

}

此外,当我使用 CURL 检索数据时,我得到:

}

因此,对于同一个 Web 请求,这是 3 个不同的结果。这里有什么问题?是否有一些我忽略的缓存机制或者我错过了什么?

0 投票
2 回答
1705 浏览

python - 在 Python 中使用 urllib.request.urlopen 时出错

这段代码有什么问题?

0 投票
1 回答
283 浏览

python - 如何设置阻止站点发送 gzip 编码响应的标头

我正在使用 python urllib2.urlopen 来获取 html 内容,并且我得到了 gziped 响应。
我可以设置标题,所以我不会压缩它吗?

我的代码

正如 Tichodroma 建议的那样,我试试这个

现在它正在工作

0 投票
1 回答
7566 浏览

python - 如何使用 Python urlopen 设置 cookie?

我正在尝试使用 Python urlopen 获取 html 站点。
我收到此错误:

HTTPError:HTTP 错误 302:HTTP 服务器返回一个重定向错误,这将导致无限循环

编码:

我了解服务器重定向到另一个 URL 并且它正在寻找 cookie。
如何设置它正在寻找的 cookie 以便我可以读取 html?

0 投票
1 回答
1582 浏览

python - 为什么 python gevent 比串行慢?

我正在使用gevent来执行并发下载。
基于示例,这是代码:

我的问题是上面的代码比串行版本花费的时间要长得多,并且在大多数情况下它会超时。这是更快的串行版本:

0 投票
0 回答
1491 浏览

python - urllib.urlopen "文件未找到错误"

这是我在尝试打开上述地址时从 urllib.urlopen 得到的错误(出于显而易见的原因,我已将 API 密钥加注星标,但在实际错误消息中它存在。)

代码是:

我添加的前两行用于诊断问题。url 实际上确实包含错误消息返回的字符串,它实际上是一个字符串对象(str)。

如果我在我的 Mac 上尝试相同的 URL 并且它可以工作(此代码在某处的云服务器上运行。)如果我在该服务器上尝试相同的 URL,在 Python 终端中,它可以工作。但由于某种原因,当该行代码在该脚本中执行时,它不会。有任何想法吗?

0 投票
0 回答
125 浏览

python - urlopen 和 mysql 的问题

我想获取网页的纯文本,其中存储了 url,然后在同一个表中添加文本进行更新。出于某种原因,在打开大约 800 个链接后,程序结束了。以下是部分代码: