问题标签 [mechanicalsoup]
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 登录网站 - 如何处理 CSRF?
我正在使用 Python 3 作为脚本,该脚本将监视网页上用户个人资料中的更新。这个站点的登录受到 CSRF 对策的保护,这是一件好事。但是,我无法让我的脚本登录到该站点。
我的方法使用
/li>mechanicalsoup
:我的方法使用
/li>robobrowser
:
在这两种情况下,我都会得到一个 HTTP 状态403
和一条消息说CSRF verification failed. Request aborted.
- 任何想法如何解决这一问题?
- 有问题的表单有一个包含 CSRF 令牌的隐藏输入。我猜
mechanicalsoup
也robobrowser
将提交此输入。我对吗?还是我必须特殊对待? - 我认为这两个包使用的会话将处理像 cookie 之类的所有内容。有什么我错过的吗?
python - 什么是mechanicalsoup 中的Mechanize get_link 等价物?
我正在尝试编写一个代码来读取电影的名称,并尝试使用 python 3.0 从 IMDB 获取它的详细信息。我正在使用mechanicalsoup,但打开浏览器后无法获取电影的链接。在mechanize 中有一个名为get_link 和follow_link 的方法。在mechanicalsoup 中是否有任何等价物。代码如下。
在这里我得到了错误
请帮帮我。还建议在 python 中是否有更好的 html 解析器和更新的文档。
python - Python3:通过 MechanicalSoup 提交表单时没有任何反应
提交搜索表单后,我需要在网站上进行一些抓取。问题是当我通过浏览器执行此操作时,页面不会重新加载,也不会在任何地方重定向:结果显示在搜索表单下方,链接没有任何更改,尽管我可以在“新”页面中看到它们html。但是当我使用以下代码时,我看不到应该在响应中的“新”页面 html(提供的链接是我实际尝试使用的链接):
我不明白我错过了什么。我宁愿不使用硒。有什么线索吗?
http - HTTP POST 请求指南
我需要更新此页面上的页码以及同一站点上的任何类似页码:http: //architects-register.org.uk/towns/Bedfordshire/Ampthill
页面中实现这一点的代码如下所示:
我是 http POST 请求的新手,不知道我需要做什么。
使用 python 3.5.2,安装了 mechanize 0.2.5(活动版本)和 mechanize0.2.6,但 Visual Studio 在尝试加载 mechanize 时抛出错误。因此,我安装了Mechanical Soup,但不知道如何处理它以实现我的目标。已经转了几个小时,所以任何帮助表示赞赏!
python - Pythonmechanicalsoup 设置组合框值
html页面中有一个下拉列表。我需要在 Python 中使用mechanicalsoup 来设置值。我试过了,但没有用。如果可能(我希望)我如何在组合框中设置一个值。还有另一个组合框(名为 combo2)。Combo2 的值取决于 Combo1 的值。Combo1 刷新 Combo2。
python - 使用请求登录网站
我尝试了两种完全不同的方法。但是我仍然无法获取仅在登录后才存在的数据。
我尝试过使用 requests 做一个,但 xpath 从 lxml import html 返回一个空导入请求
我用机械汤尝试了另一个,但它仍然返回一个空值
我更了解顶级解决方案,所以我喜欢用它来做,但我有什么遗漏吗?(我确定我错过了很多)
python - Python 3 Mechanical Soup - TypeError:“NoneType”对象不可调用
我是一个新手,试图使用 Python 3 和 Mechanical Soup 建立一个 webscraper。我试图抓取的网站需要登录,我似乎无法提交我的登录详细信息。
我得到的错误来自最后一行(response = browser.submit ...)。
打印出 login_form 提供
并打印 login_page.url 提供
我正在尝试遵循本教程: http: //piratefache.ch/python-3-mechanize-and-beautifulsoup/
任何人都知道发生了什么并且可以提供帮助吗?
web-scraping - Python3 MechanicalSoup -- 使用 aspx 提交基本表单
我想从 CHP 网站获取交通事故数据:https ://cad.chp.ca.gov/Traffic.aspx
左上角有一个简单的表格,用户可以在其中选择一个县,然后出现该县的交通事故表。
我正在使用 MechanicalSoup 提交表单,但我收到的请求不包括流量数据表。您可以在上面的链接中自己尝试一下,然后查看我要抓取的表格。
这是我的代码:
该page2.soup
对象包含大部分页面,但不包含您“手动”提交表单时看到的表格。
我错过了什么吗?
python - Python:使用mechanicalsoup将值传递给下拉并提取内容
我正在尝试从动态网页中提取内容。我的要求是为这把特定椅子选择座椅样式,然后从网页的表格中提取值。我使用了以下代码。输出如下所示:
输出:
不相关的代码被注释掉。
有没有可能的解决方案。
谢谢。
python - 从 pogdesign.co.uk/cat/ 抓取数据
我正在尝试从
http://www.pogdesign.co.uk/cat/
.
我想获取每个节目的频道和播出时间,但问题是默认情况下它们不会出现。只有在手动配置设置并保存后,才会出现每个节目的频道和播出时间。
据我在检查 Chrome 开发者工具中的“网络”部分后了解,在我单击“保存设置”后实际发生的情况是正在发送一个 POST 请求,其中包含相关的数据参数(例如's_networks':'on'
等),然后是一个 GET正在发送请求,以检索带有频道和播放时间的 html 文件。
我尝试使用 python 的requests
包和mechanicalsoup
包来模拟这个过程(POST 请求,然后是 GET 请求)。
requests:
mechanicalsoup:
然而,我收到的回复不包含频道和播出时间数据。
我注意到的唯一区别是浏览器的 POST 请求302
返回的状态码是 ,而我的 python 请求返回的状态码是200
.