网页抓取 - 网页登录问题



所以我试图抓取登录系统后面的东西。我尝试使用 CasperJS,但表单有问题,所以也许这不是要走的路;我检查了网站的源代码,表单名称是"theform",但我永远无法登录一定是做错了什么。有没有关于如何使用 CasperJS 正确执行此操作的教程,我已经查看了 API 和谷歌,但没有任何真正效果。

或者有人对如何轻松进行网络抓取有任何建议。我必须能够检查一个简单的条件状态并单击几个按钮,仅此而已。

作为CasperJS的作者,不幸的是,如果没有看到真实的代码或任何可重现的测试用例,我就无法为您提供太多帮助。

由于您的帖子被标记为Python,您可能会对 Ghost.py 感兴趣,这是一个受CasperJS启发但具有Python API的项目。

在你的问题中,你提到了CasperJS,但你把问题标记为python。如果您想使用python作为语言,您可以查看描述不同网页抓取工具的视频

对于使用登录名管理网页,您可以使用机械化来自上述网站的示例代码:

br = mechanize.Browser()
# Explicitly configure proxies (Browser will attempt to set good defaults).
# Note the userinfo ("joe:password@") and port number (":3128") are optional.
br.set_proxies({"http": "joe:password@myproxy.example.com:3128",
"ftp": "proxy.example.com",
            })
# Add HTTP Basic/Digest auth username and password for HTTP proxy access.
# (equivalent to using "joe:password@..." form above)
br.add_proxy_password("joe", "password")
# Add HTTP Basic/Digest auth username and password for website access.
br.add_password("http://example.com/protected/", "joe", "password")

其他好的蟒蛇选择是刮擦

您可以使用 mechanize 登录(Python 中的有状态程序化网页浏览)!

对于解析页面,您可以从美丽汤中使用!

如果您只需要报废数据 - 也许您会尝试更简单的方法? Mechanize 适用于此类目的,如果您尝试报废的网站没有花哨的 JavaScript。

这里有很好的讨论步骤:Python机械化登录网站

因为你提到了CasperJS,我可以假设网站使用JavaScript生成一些数据。我的建议是检查WebKit。它是一个浏览器"引擎",可以让您对网站做任何您想做的事情。你可以使用 PyQt4 框架,它非常好,并且有一个很好的文档。

最新更新