使用Ruby刮擦ASP.NET站点

使用Ruby刮擦ASP.NET站点,第1张

概述我想使用 Ruby来抓取这个ASP.NET站点的搜索结果,最好只使用Hpricot(我无法打开Firefox的实例): http://www.ngosinfo.gov.pk/SearchResults.aspx?name=&foa=0 但是,我无法弄清楚如何浏览每一页结果.基本上,我需要模拟点击这些链接: <a href="javascript:__doPostBack('ctl00$Conten 我想使用 Ruby来抓取这个ASP.NET站点的搜索结果,最好只使用Hpricot(我无法打开firefox的实例): http://www.ngosinfo.gov.pk/SearchResults.aspx?name=&foa=0

但是,我无法弄清楚如何浏览每一页结果.基本上,我需要模拟点击这些链接:

<a href="JavaScript:__doPostBack('ctl00$ContentPlaceHolder1$Pager1','')"  ID="ctl00_ContentPlaceHolder1_Pager1">2</a><a href="JavaScript:__doPostBack('ctl00$ContentPlaceHolder1$Pager1','')"  ID="ctl00_ContentPlaceHolder1_Pager1">3</a>

等等

我尝试使用Net :: http来处理帖子,但是虽然收到了正确的HTML,但没有搜索结果(我可能没有正确地做到这一点).此外,页面的URL不包含任何指示页面的参数,因此无法以此方式强制执行结果.

任何帮助将不胜感激.

解决方法 使用mechanize-1.0.0可以实现以下工作:

agent = Mechanize.new page = agent.get('http://127.0.0.1/some.aspx') form = page.form("aspnetForm") form.add_fIEld!('__EVENTARGUMENT','Page') form.add_fIEld!('__EVENTTARGET','ctl00$ContentPlaceHolder1$gvwSomeList') page = agent.submit(form) # this gets page 2
总结

以上是内存溢出为你收集整理的使用Ruby刮擦ASP.NET站点全部内容,希望文章能够帮你解决使用Ruby刮擦ASP.NET站点所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1285724.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存