python - Mechanize br.click_link() 和 br.follow_link() 之间的区别

标签 python forms mechanize

我正在使用 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() 有什么区别。 Mechanize 文档没有清楚地解释这一点。

谢谢

最佳答案

关于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

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

关于python - Mechanize br.click_link() 和 br.follow_link() 之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13204781/

相关文章:

python - 在 python 列表中查找下一个可用数字

python - 如何在ncurses屏幕中移动字符串?

python - 隐藏刻度标签值但保留轴标签

python - Pip安装TLS CA问题

forms - 如何将纯文本节点添加到drupal表单中?

python - Mechanize browser.submit() 返回原始表单而不是预期结果

xpath 选择第一个表

php - 通过添加到购物车 paypal 购买多件商品

php - 将数据插入数据库

python - 无法按下按钮