【问题标题】:Mechanize difference between br.click_link() and br.follow_link()机械化 br.click_link() 和 br.follow_link() 之间的区别
【发布时间】:2012-11-03 00:20:52
【问题描述】:

我正在使用 mechanize 来自动化一些表单提交。

为此,我需要转到某个网站的主页,单击带有特定文本的链接,该链接会将我重定向到另一个页面,然后在新页面中填写表格。

我尝试过使用

  response = br.follow_link(text_regex="sometext")

  for f in response.forms()
      print f.name

我得到的错误信息是 AttributeError: closeable_response instance has no attribute 'forms'

当我尝试时

for f in br.forms()
    print f.name

它打印主页中的表单名称,而不是我重定向到的新页面。

如何在新页面中找到表单的名称?

“响应”包含什么?

click_link() 和 follow_link() 有什么区别。机械化文档没有清楚地解释这一点。

谢谢

【问题讨论】:

    标签: python forms mechanize


    【解决方案1】:

    关于click_link()和follow_link()的区别:

    这两种方法都采用相同的关键字作为参数。

    • click_link() 是一个方法,它会返回一个 Request 对象,然后可以用来创建一个请求:

      req = br.click_link(text='Sample Text')
      br.open(req)
      
    • follow_link()会执行和.open()一样的动作,直接打开链接。

    此信息取自以下文档: http://joesourcecode.com/Documentation/mechanize0.2.5/mechanize._mechanize.Browser-class.html#click_link

    Follow_link() 行为可以在 wwwsearch 给出的示例中观察到: http://wwwsearch.sourceforge.net/mechanize/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-08-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-12
      • 1970-01-01
      相关资源
      最近更新 更多