Python WWW 宏

发布于 2024-08-02 09:04:03 字数 226 浏览 4 评论 0原文

我需要类似 iMacros for Python 的东西。如果有这样的事情那就太好了:

browse_to('www.google.com')
type_in_input('search', 'query')
click_button('search')
list = get_all('<p>')

你知道这样的事情吗?

提前致谢, 埃塔姆。

i need something like iMacros for Python. It would be great to have something like that:

browse_to('www.google.com')
type_in_input('search', 'query')
click_button('search')
list = get_all('<p>')

Do you know something like that?

Thanks in advance,
Etam.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

深者入戏 2024-08-09 09:04:03

几乎直接实现了问题中的愿望 - twill

twill 是一种简单的语言,允许用户从命令行界面浏览 Web。使用 twill,您可以浏览使用表​​单、cookie 和大多数标准 Web 功能的网站。

twill 支持自动化 Web 测试并具有简单的 Python 界面。

(为了方便起见,twill 中包含了 pyparsing、mechanize 和 BeautifulSoup。)

Python API 示例:

from twill.commands import go, showforms, formclear, fv, submit

go('http://issola.caltech.edu/~t/qwsgi/qwsgi-demo.cgi/')
go('./widgets')
showforms()

formclear('1')
fv("1", "name", "test")
fv("1", "password", "testpass")
fv("1", "confirm", "yes")
showforms()

submit('0')

Almost a direct fulfillment of the wishes in the question - twill.

twill is a simple language that allows users to browse the Web from a command-line interface. With twill, you can navigate through Web sites that use forms, cookies, and most standard Web features.

twill supports automated Web testing and has a simple Python interface.

(pyparsing, mechanize, and BeautifulSoup are included with twill for convenience.)

A Python API example:

from twill.commands import go, showforms, formclear, fv, submit

go('http://issola.caltech.edu/~t/qwsgi/qwsgi-demo.cgi/')
go('./widgets')
showforms()

formclear('1')
fv("1", "name", "test")
fv("1", "password", "testpass")
fv("1", "confirm", "yes")
showforms()

submit('0')
听风吹 2024-08-09 09:04:03

使用机械化。除了在页面中执行 JavaScript 之外,它还不错。

Use mechanize. Other than executing JavaScript in a page, it's pretty good.

转角预定愛 2024-08-09 09:04:03

另一件需要考虑的事情是编写自己的脚本。一旦你掌握了它的窍门,它实际上并不太难,并且如果不调用六个巨大的库,它甚至可能会更快(但我不确定)。我使用名为“Charles”的网络调试器来浏览我想要抓取的网站。它记录所有传出/传入的 http 通信,我使用这些记录对查询字符串进行逆向工程。在 python 中操作它们可以实现相当快速、灵活的抓取。

Another thing to consider is writing your own script. It's actually not too tough once you get the hang of it, and without invoking a half dozen huge libraries it might even be faster (but I'm not sure). I use a web debugger called "Charles" to surf websites that I want to scrape. It logs all outgoing/incoming http communications, and I use the records to reverse engineer the query strings. Manipulating them in python makes for quite speedy, flexible scraping.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文