【问题标题】:Mechanize for Python 3.xPython 3.x 的机械化
【发布时间】:2011-05-13 08:05:44
【问题描述】:

有什么方法可以在 Python 3.x 中使用 Mechanize?

或者有什么替代品可以在 Python 3.x 中使用?

我已经搜索了几个小时,但我没有找到任何东西:(

我正在寻找如何使用 Python 登录网站的方法,但该网站使用 javascript。

提前致谢,

亚当。

【问题讨论】:

    标签: python login screen-scraping screen mechanize


    【解决方案1】:

    我正在做一个类似的项目,但 mechanize 的常见问题解答明确表示他们不打算在短期内支持 3x。代码必须用 3 编写有什么原因吗?

    我试图解决这个问题的方法是通过提交表单来模拟 java 脚本,这需要一些逆向工程。 (也就是说,如果 javascript 以提交表单结束,并且您可以找到脚本传递给 submit() 的参数,只需按照 mechanize doc 中的示例进行操作

    http://wwwsearch.sourceforge.net/mechanize/

    br.select_form(name="order")
    # Browser passes through unknown attributes (including methods)
    # to the selected HTMLForm.
    br["cheeses"] = ["mozzarella", "caerphilly"]  # (the method here is __setitem__)
    # Submit current form.  Browser calls .close() on the current response on
    # navigation, so this closes response1
    response2 = br.submit()
    

    【讨论】:

      【解决方案2】:

      lxml.html 提供表单处理工具并支持 Python 3。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-04-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-08-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多