【问题标题】:Site scraping drop down lists using Mechanize and python使用 Mechanize 和 python 抓取网站的下拉列表
【发布时间】:2011-12-26 14:49:53
【问题描述】:

我正在尝试使用 mechanize 和 python,http://www.jet4you.com 从网站获取可用的航班数据,但下拉列表控件显示可用项目的“无”。有没有办法使用mechanize、urllib 或beautifulsoup 获得<options>

当我使用 fiddler 提交表单时,我会看到下拉列表的值,但我无法使用 mechanize 选择它们。

br = mechanize.Browser()
br.possible_items("AvailabilityCompactSearchInputViewType$DropDownListMarketOrigin1")
["none"]

【问题讨论】:

  • 如果下拉值是从 AJAX 调用中加载的,您需要嗅探到服务器的 AJAX 请求并模拟它们,或者使用更强大的东西,它可以处理 JavaScript 并具有完整的 DOM 实现.
  • 我认为@emaster70 是对的。您将在此question 的答案中找到更多帮助。

标签: python beautifulsoup mechanize


【解决方案1】:

放弃使用 javascript 的 Mechanize。使用支持 javascript 的浏览器模拟器,例如 selenium。我也为此尝试过机械化,但它失败了。

【讨论】:

  • Splinter 真的很有帮助,而且比纯 Selenium 容易得多。
猜你喜欢
  • 1970-01-01
  • 2013-01-14
  • 1970-01-01
  • 1970-01-01
  • 2022-01-05
  • 2011-09-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多