问题标签 [robobrowser]
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 - 我的歌词机器人不向服务器发送字符串
我在 python 中创建了一个歌词机器人。我正在使用 robobrowser 从genius.com 中删除歌词,但它不会将歌词发送给群组。
python - 解码 Unicode 时出现 Python3 RecursionError(用于 BeautifulSoup/RoboBrowser)
我正在使用 BeautifulSoup 和 RoboBrowser 开发一个网络抓取组件,并且在一个案例中遇到了一个奇怪的问题。有问题的页面包含与所有其他正常工作的案例相同的 chrome 和结构,但它的主要数据字段(一个整齐标记的 div)是一个巨大的行(大约 3000 个日语文本字符),没有换行符。它充满了很多 BR 标签(他们以一种相当可怕的方式使用它们来格式化表格......)和一些用于格式化的 SPAN 标签,但整个正文文本是单行的。
这似乎不应该是一个问题,但我的刮刀RecursionError: maximum recursion depth exceeded in comparison
在吐出数百(可能数千)对这些相同的行之后死了:
我最初是在指责 BeautifulSoup,并认为 BR 标签的数量过多,但似乎问题实际上出在 Unicode 上。这是抛出它的代码:
我认为这可能是行长,因此我为什么要逐个解析 DIV 块,而不是一次完成整个事情,但这丝毫没有帮助。无论块多么小,该str(bsObject)
函数似乎都会使 unicode 解析器陷入疯狂。
稍微加厚情节;我将页面源的整个文本作为一个长字符串复制到一个新的 Python 沙箱中,这样我就可以针对它测试不同的代码,而无需经常登录网站。即使在我通过 vi 运行文本并强制将其保存为 UTF8 之后,Python 也立即拒绝编译代码(抱怨它包含非 UTF8 字符)。但是,在文本中插入换行符以将其分成更小的块阻止了此错误的出现,尽管没有更改或删除文本本身的单个字符,此时脚本完美地编译并抓取了页面。
我不知道如何从这里开始。我无法控制我正在抓取的网站;我曾想过在 BeautifulSoup 接触之前将换行符强制插入 RoboBrowser 中的响应对象,这是一个可怕的 hack,但似乎可以解决问题,但我不知道该怎么做。谁能建议另一种方法?
(不幸的是,我无法链接到我正在从中抓取数据的页面,因为它是一个研究数据供应商,需要登录并且没有用于单个数据的永久 URL。)
编辑:在下面添加完整的堆栈跟踪...
python - 使用 robobrowser 和 beautifulsoup 解析网页
我是网络抓取的新手,在使用 robobrowser 提交表单后尝试解析网站。我得到了正确的数据(当我这样做时我可以查看它:print(browser.parsed))但在解析它时遇到了麻烦。网页源代码的相关部分如下所示:
如果我做
我得到:
而不是琼斯,约翰。
我能够获得相关数据的唯一方法是:
这将返回 29 个列表中的每一个,每个 'tr' 我可以将其转换为文本并搜索相关信息。
我也尝试过创建一个 BeautifulSoup 对象:
但它丢失了所有标签/ID,所以我不知道如何在其中搜索。
有没有一种简单的方法可以让它使用 'tr' 遍历每个元素并获取实际数据而不是标签,以反对重复转换为字符串变量并通过它进行搜索?
谢谢
python - 使用 RoboBrowser 的不同网站响应
我正在尝试检索网站的 HTML。当我在 Chrome 中查看该页面时,我会看到一个带有日期和费率选项的表单。但是当我使用 RoboBrowser 请求该站点时,我看到了一个完全不同的简短 HTML 响应。我做错了什么?
我的代码:
结果:
python - 导入 cookie - Robobrowser - Python
我正在寻找使用robobrowser
. 所以我定义:
但是,browser
没有cookie
正确导入:
browser
不会将我的 cookie 作为一个 cookie 导入,而是作为 3 个不同的 cookie... 作为Robobrowser
基础Requests
,我使用:如何使用 Python Requests 库在发布请求中发送 cookie?
谢谢你。
python - Urllib3 socks5 代理错误:“socks”没有属性“create_connection”
我需要 Robobrowser 来使用 Tor,我认为最简单的方法是:Robobrowser with Sessions。但是我遇到了一个奇怪的请求问题,或者更具体的 urllib3:
AttributeError:模块 'socks' 没有属性 'create_connection'
如Urllib3 文档中所述, create_connection 是袜子的一个属性。
urllib3 版本:1.19.1
请求版本:2.12.4
PySocks 版本:1.6.5
编辑:
堆栈跟踪:
python - 使用 python 下载游泳时间
我正在尝试从http://www.usawimming.org/DesktopDefault.aspx?TabId=1470&Alias=Rainbow&Lang=en-US自动下载许多游泳者的游泳时间。
游泳者的一个例子是姓“Rule”和名字“Remedy”的游泳者。(是的,真的有这样的游泳健将!)如果你在网站上填写这两个字段并点击搜索,它就可以工作。
然而,虽然下面的代码运行没有错误,但它最后并没有给我任何游泳结果:
我错过了什么?
python - RoboBrowser 表单提交
我正在尝试使用 robobrowser 在网站上自动提交表单,但是在我提交表单后,我没有得到正确的响应,而是显示我所在的页面。这是我的代码
python - Python RoboBrowser SSL 错误:握手错误:SysCallError(104,'ECONNRESET')
我正在尝试在网页上填写表格并使用 RoboBrowser 库获取一些结果。
我有一个包含约 200k 引用的文件,可能无法提供足够的答案(存储在 data[1] 中的街道名称可能与表单中所需的名称不同,并导致另一个页面打开)。如果响应不是预期的(主要是由于街道名称错误),我的代码运行并打印我想要获取的信息或打印“NS”。
但是,在随机时间之后(首先在大约 1300 个周期之后,然后大约 100-300 或更少),我得到:
我尝试在这里和那里添加 time.sleep(0.01) ,以为我正在超载页面,但它没有帮助。有人有想法吗?
我的代码:
我正在使用 Ubuntu 16.04.2 LTS 和 Python2.7
谢谢 !
python - 如何在 Robobrowser 中删除 TypeError
我正在尝试制作一个程序来重新发行我从大学图书馆拿来的书,因为我应该把我的书USER-ID
放在表格中并提交,然后做剩下的代码。但我什至无法获取列出我所有书籍的页面,TypeError
当我尝试打印列出我的书籍的页面的内容时,我得到了。
这是整个追溯。
这是我的代码。
和表格源代码。
有什么帮助吗?