问题标签 [urllib2]
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.
python - 带有 https 和 http 身份验证的 pywikipedia 机器人
我无法让我的机器人登录到 Intranet 上的 MediaWiki 安装。我相信这是由于 http 身份验证保护了 wiki。
事实:
- wiki 根目录是:https ://local.example.com/mywiki/
- 使用 Web 浏览器访问 wiki 时,会弹出一个要求提供企业凭据的弹出窗口(我假设这是基本访问身份验证)
这就是我的 user-config.py 中的内容:
这就是我在 mywiki_family.py 中的内容:
当我执行 login.py -v -v 时,我得到这个:
(我不确定为什么它有 'local.example.com/w' 而不是 '/mywiki'。)
我认为它可能正在尝试对 example.com 而不是 example.com/wiki 进行身份验证,因此我将身份验证行更改为:
但后来我从 IIS 收到 HTTP 401.2 错误:
您无权使用您提供的凭据查看此目录或页面,因为您的 Web 浏览器正在发送 Web 服务器未配置为接受的 WWW-Authenticate 标头字段。
任何有关如何使这项工作的帮助将不胜感激。
更新修复我的家庭档案后,它现在说:
获取站点 mywiki:en 的信息('http 错误'、401、'未授权'、)警告:无法打开' https://local.example.com/mywiki/index.php?title=Non-existing_page&action=edit&useskin=单书'. 也许服务器或您的连接已关闭。1 分钟后重试...
我查看了计划 urllib2.ulropen 调用中的 HTTP 标头,它使用的是 WWW-Authenticate: Negotiate WWW-Authenticate: NTLM。我猜是 urllib2,因此 pywikipedia 不支持这个?
更新添加了一个美味的赏金以帮助使其正常工作。我可以使用 python-ntlm 进行身份验证。如何将其集成到 pywikipedia 中?
python - 如何使python urllib2遵循重定向并保持发布方法
我正在使用 urllib2 将数据发布到表单。问题是表单回复了 302 重定向。根据Python HTTPRedirectHandler重定向处理程序将接受请求并将其从 POST 转换为 GET 并遵循 301 或 302。我想保留 POST 方法和传递给开启程序的数据。通过简单地将 data=req.get_data() 添加到新请求中,我对自定义 HTTPRedirectHandler 进行了不成功的尝试。
我确信这已经完成了,所以我想我会发一个帖子。
注意:这与这篇文章和这篇文章类似,但我不想阻止重定向,我只想保留 POST 数据。
这是我的 HTTPRedirectHandler 不起作用
python - Python urllib2 URLError异常?
我之前在 Windows XP 机器上安装了 Python 2.6.2 并运行以下代码:
我收到以下错误。
python - 是否可以查看 urllib2 响应中的数据?
我需要检测 HTTP 响应中的字符编码。为此,我查看标头,然后如果未在内容类型标头中设置它,我必须查看响应并查找“ <meta http-equiv='content-type'>
”标头。我希望能够编写一个看起来和工作起来像这样的函数:
但是,如果我在“detect_html_encoding”方法中执行 response.read(),那么调用我的函数之后的后续 response.read() 将失败。
阅读后是否有一种简单的方法可以查看响应和/或倒带?
php - cURL:通过代理 https
我需要向 https URL 发出 cURL 请求,但我也必须通过代理。这样做有什么问题吗?我在使用 curl 和 php 时遇到了很多麻烦,我尝试在 Python 中使用 urllib2 进行此操作,结果发现 urllib2 在通过代理时无法 POST 到 https。我无法找到任何与 cURL 相关的文档,但我想知道是否有人知道这是否是一个问题?
python - response.info().getencoding() 的实现在 urllib2 中被破坏了吗?
我希望以下 python 会话中的 getencoding 输出为“ISO-8859-1”:
这是 python 版本 2.6('2.6 (r26:66714, Aug 17 2009, 16:01:07) \n[GCC 4.0.1 (Apple Inc. build 5484)]' 特别是)。
python - urlopen、BeautifulSoup 和 UTF-8 问题
我只是想检索一个网页,但不知何故,HTML 文件中嵌入了一个外来字符。当我使用“查看源代码”时,这个字符不可见。
我也试过...
如何在不出现此错误的情况下将此网页读入 BeautifulSoup?
python - 修复损坏的网址
有谁知道修复“损坏”网址的库。当我尝试打开一个网址时,例如
urllib2.urlopen 阻塞并给我一个 HTTPError 回溯。有谁知道可以解决这些问题的图书馆?
python - 带有 urllib2 的代理
我打开网址:
site = urllib2.urlopen('http://google.com')
我想要做的是以相同的方式与我在某处告诉我的代理连接:
site = urllib2.urlopen('http://google.com', proxies={'http':'127.0.0.1'})
但这也没有用。
我知道 urllib2 有类似代理处理程序的东西,但我不记得那个功能了。
python - 为什么我用 urllib2 得到 urllib2.HTTPError 而 urllib 没有错误?
我有以下简单的代码:
此代码生成以下错误消息:
但是,如果我用 urllib 替换 urllib2,我不会收到任何错误消息。任何人都可以解释这种行为吗?