我有一个访问 fcc.gov 的脚本,然后单击触发下载的链接:
require "mechanize"
docket_number = "12-268" #"96-128"
url = "http://apps.fcc.gov/ecfs/comment_search/execute?proceeding=#{docket_number}"
agent = Mechanize.new
agent.pluggable_parser.default = Mechanize::DirectorySaver.save_to 'downloads'
agent.get(url) do |page|
link = page.link_with(:text => "Export to Excel file")
xls = agent.click(link)
end
这在docket_number
“12-268”时工作正常。但是,当您将其更改为“96-128”时,Mechanize 会下载页面的 html 而不是所需的电子表格。
两个页面的网址是:
- http://apps.fcc.gov/ecfs/comment_search/execute?proceeding=12-268(有效)
- http://apps.fcc.gov/ecfs/comment_search/execute?proceeding=96-128(这是我需要帮助的地方)
如您所见,如果您在浏览器(我使用的是 Chrome)中访问每个页面并单击“导出到 Excel 文件”,则会下载电子表格文件并且没有问题。“96-128”有更多行,因此当您单击导出链接时,它会将您带到一个新页面,该页面每 10 秒左右刷新一次,直到文件开始下载。我怎样才能解决这个问题,为什么会出现这种不一致?