问题标签 [python-requests]

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 投票
1 回答
803 浏览

python - python请求:如何定义OR参数

我在 python 中使用 requests 模块来构造 API 查询的 URL。以下是我正在使用的代码:

我想向 q 参数(q = 3145 或 177)添加 OR 条件。最终的 url 将是http://www.pathwaycommons.org/pc2/search.xml?q=3146|177&organism=9606. 如果我使用Params = {'q':['3145','177'],'organism':'9606'},输出 url 是"http://www.pathwaycommons.org/pc2/search.xml?q=3146&q=177&organism=9606". 我还没有找到有关如何为 OR 条件定义参数字典的任何信息。有人可以给出一些想法吗?

先感谢您。

温迪

0 投票
3 回答
9114 浏览

python - 访问 https 站点 python (urllib2, requests)

我正在尝试访问以下站点https://electionbuddy.com/elections/4322/results

我试过使用handler = urllib2.HTTPBasicAuthHandler(password_mgr)etc 和requests,但是 webapp 只是发回一个页面说我没有权限(没有用户/通行证去哪里)。我尝试了萤火虫,但无法从中得到任何明显的东西。如果需要,我可以编辑和附加。

我怎么能登录到这样的网站?正如 Burhan 所提到的,这种情况下您需要“登录保存发送的 cookie 并将它们在下一个请求中发送到结果页面”。

跟进这一点 - 为什么以下工作不起作用

似乎有一个身份验证令牌,与会话 ID 不同。虽然不太清楚如何去做这件事......

谢谢

0 投票
2 回答
51859 浏览

python - Python 请求和 Unicode

我正在使用 requests 库来查询 Diffbot API 以从网页 url 获取文章的内容。当我访问我在浏览器中创建的请求 URL 时,它会返回一个 JSON 对象,其中包含 Unicode 中的文本(对吗?)例如(我稍微缩短了文本):

{"icon":"http://mexico.cnn.com/images/ico_mobile.jpg","text":"CIUDAD DE MÉXICO (CNNMéxico) \u2014 Kassandra Guazo Cano tiene 32 años, pero este domingo participó por primea vez en una elección.\n\"No había sacado mi (credencial del) IFE (Instituto Federal Electoral) porque al hacer el trámite hay Mucha mofa cuando ven que tu nombre no contrast con tu y otros documentos de acuerdo con su nueva identidad。\ nSánchez dice que los solicitantes no son discriminados, pero la experiencia de Kassanda es diferente: \"hay que pagar un licenciado, dos peritos (entre ellos un endocrinólogo). Además, el juez dicta sentencia para el cambio de nombre y si no es 有利tienes que esperar otros cuatro años para volver a demandar al registro Civil\".\nAnte estaituación,el Consejo para Prevenir y Eliminar la sculina, los transgénero votan - México: Voto 2012 - Nacional","url":"http://mexico.cnn.com/nacional/2012/07/02/con-apariencia-de- mujer-e-identidad-masculina-los-transexuales-votan","xpath":"/HTML[1]/BODY[1]/SECTION[5]/DIV[1]/ARTICLE[1]/DIV[1] /DIV[6]"}

当我使用python请求库如下:

它返回这个(再次注意我稍微缩短了文本):

{u'url': u'http://mexico.cnn.com/nacional/2012/07/02/con-apariencia-de-mujer-e-identidad-masculina-los-transexuales-votan', u'text ': u'CIUDAD DE M\xc9XICO (CNNM\xe9xico) \u2014 Kassandra Guazo Cano tiene 32 a\xf1os, pero este domingo particip\xf3 por primea vez en una elecci\xf3n.\n"No hab\xeda sacado mi ( credencial del) IFE (Instituto Federal Electoral) porque al hacOyuky Mart\xednez Col\xedn, tambi\xe9n transg\xe9nero, y que estaba acompa\xf1ada de sus dos hijos y su mam\xe1.\nAmbas trabajan comoitarianas en el Centro de Apoyo a las Identidades Trans, AC, donde participan en una campa\xf1a de prevenci\xf3n de enfermedadessexuales.\n"Quisi\xe9ramos que no solo nos vean como trabajadorassexuales o estilistas, sino que luchamos por nuestros derechos",dice Kassandra mientras sonr\xede, sostiene su credencial de lector y levanta su pulgar entintado.', u'title': u'Con apariencia de mujer e identidad masculina, los transg\xe9nero votan - M\xe9xico: Voto 2012 - Nacional' , u'xpath': u'/HTML[1]/BODY[1]/SECTION[5]/DIV[1]/ARTICLE[1]/DIV[1]/DIV[6]', u'icon': u'http://mexico.cnn.com/images/ico_mobile.jpg'}

我不太了解Unicode。如何确保我得到的请求仍然是 Unicode?

0 投票
3 回答
2183 浏览

python - 无法向 Imgur 发送文件

我正在尝试使用python requests lib使用imgur api将图像上传到 Imgur 。api 返回 400,表示该文件不是受支持的文件类型或已损坏。我不认为图像损坏(我可以在本地查看它),并且我尝试过.jpg,.jpeg.png. 这是代码:

确切的错误信息:

让我知道我是否可以提供更多信息。我对 Python 很熟悉,希望这是一些简单的失误,有人可以解释一下吗?

0 投票
2 回答
214 浏览

python - 使用请求将数据发布到 html 表单

我希望使用 python 将数据发布到网站表单。该网站是http://up-to-no-good.appspot.com 我知道我需要使用 post,但我不知道如何让它实际发布。我想发送的示例输入(使用请求模块)是:

players : 21 (33 max)

# userid name uniqueid connected ping loss state # 88 "gza" STEAM_0:0:31273869 30:33 70 0 active # 75 "MasterDovahBeard" STEAM_0:1:41046299 46:08 120 0 active # 101 "Gigs" STEAM_0:0:17483483 04:40 78 0 active

0 投票
2 回答
4896 浏览

python - Python用lxml下载图片

我需要在与此类似的 HTML 代码中找到一张图片:

我正在使用 lxml 和请求。

这是代码:

但我收到一个错误:

建议?

0 投票
2 回答
2392 浏览

python - 使用 Python 请求将文件放入 S3

我有这个使用该generate_url(300, 'PUT', ...)方法生成的 URL,我想使用请求库将文件上传到其中。

这是我一直在使用的代码:requests.put(url, data=content, headers={'Content-Type': content_type}),我也尝试了一些变体,但我得到的错误总是一样的。

我每次都从 S3 收到 403 -SignatureDoesNotMatch错误,我做错了什么?

0 投票
1 回答
2990 浏览

python - 如何使用 Python Requests 库处理编码

我与编码斗争太久了,今天我想打破思维障碍。

现在,我正在使用Requests抓取一堆网站,据我所知,它使用 HTTP 标头来确定页面使用的编码,当网站的标头丢失时回退到chardet 。从那里,它解码它下载的字节码,然后帮助我将r.text.

都好。

但我感到困惑的是,我从那里对文本做了一些工作,然后将其打印到标准输出,在我打印时提供编码:

问题是当我这样做时,打印出来的东西就搞砸了。在下文中,我希望在“判断”和“标准”这两个词之间加一个破折号:

相反,我得到了一个四四方方的东西,里面有四个小数字。当然,它似乎没有出现在这里,但我认为数字是 0097,这与我得到的结果相对应:

所以这是有道理的,但我的 emdash 呢?

该过程归结为:

  1. 请求下载页面并将文本智能解码为 un​​icode 对象
  2. 我和它一起工作
  3. 我将其编码为 utf-8 并打印出来。

问题出在哪里?这对我来说听起来像是神话般的 unicode 三明治,但显然我错过了一些东西。

0 投票
1 回答
291 浏览

python - 如何使用请求模块诊断客户端证书错误?

我正在编写验证我们的 JSONRPC 服务器的测试,并且我想使用requests 模块来测试设置无效的 Content-Length 和 Content-Type 标头等内容。但是,我们的服务器需要有效的客户端证书,而我不能让 requests 模块正确使用我的客户证书,如他们的 turorial 中所述

如果我只是打开一个套接字并手动发送数据,它就可以正常工作:

但是当我使用 requests 模块做同样的事情时,它失败了:

所以我不仅不知道为什么会失败,我什至不知道如何找出问题所在。我可以尝试获得更改我们的 Apache 服务器设置以提高日志记录的权限,这可能会对此有所了解。但是客户端有什么方法可以找出失败的原因吗?

0 投票
1 回答
2675 浏览

python - 登录 Steam 网站

我正在寻找一个脚本来登录 SteamPowered.com 网站,然后导航到帐户页面。我编写了一个脚本,该脚本从该页面获取销售额并将其加起来。问题是我必须手动将 HTML 保存到文件中,然后打开该文件。我试图这样做,requests但我认为 Steam 使用 OpenID 或类似的东西,我无法登录。然后我看了看,mechanize但由于验证码,我无法通过登录屏幕,尽我所能告诉。

使用 Python 登录 Steam 网站需要采取哪些必要步骤?

如果您有兴趣,这里是总销售柜台。不过这是较早的版本,因此如果系统上的销售额少于 6 个,则需要处理索引错误,并且您将无法验证总销售额。http://pastebin.com/3CXBJUGe


更新:我开始使用 Selenium,除非我让它在我当前打开的浏览器中打开一个新标签,否则它会弹出要求用户输入 Steam 发送到他们电子邮件的代码。我认为这比像以前那样向用户询问他们的购买历史页面要困难得多。

这是硒代码。它使用硬编码的 Xpath,因此您可能想要更改它。