如何从远程URL获取特定的HTML内容?

时间:2011-09-23 10:43:37

标签: javascript jquery web-scraping

我想从远程网站url获取特定的HTML内容。
网站网址如下,
http://www.realtor.com/realestateandhomes-detail/10216-Montwood-Drive_El-Paso_TX_79925_M78337-06548

我想从上面的网站网址获取一些具体信息。 在这里我附加图像它突出显示我想要的所有突出部分的特定区域,从标题,图像和描述。 enter image description here


如何使用JQuery或Javascript或Json调用获取内容? 有其他方法可以获得这些吗?

5 个答案:

答案 0 :(得分:2)

答案 1 :(得分:2)

您可能有兴趣查看pjscrape(免责声明:这是我的项目)。它是一个使用PhantomJS的命令行工具,允许在完整的浏览器环境中使用JavaScript和jQuery进行抓取。

  • Scrapers可以用直接的Javascript编写,在你正在搜索的网站的上下文中执行,使用非常简单的,jQuery友好的语法。
  • 它可以抓取单个页面,一组页面,或者您可以定义一个函数来查找每页上蜘蛛的更多URL。
  • 它支持JSON和CSV输出,无论是文件还是STDOUT

如果网站是静态的并且结构是统一的,那么将所需的所有内容整理成结构化数据格式应该非常快。

答案 2 :(得分:0)

在抓取内容时,必须考虑以下因素:
内容是静态html还是内容的一部分是由ajax-calls?

呈现的

在第一种情况下,简单的http-get-routines就像JNDPNT评论的Link中使用的那样就足够了。
在第二种情况下,您可能希望通过它Webdriver来查看Selenium的自动化。

在任何情况下,最好向您的同事询问他是否可以为您提供原始数据的界面,例如通过网络服务。

答案 3 :(得分:0)

如果我找对你,你希望用户的浏览器在飞行中刮掉另一个域的内容,对吗?

如果没有通过同一域上的某些脚本代理请求(或通过jsonp请求返回给您的HTML),那将是不可能的。由于同源策略。

很抱歉让人失望。

答案 4 :(得分:0)

使用Yahoo Pipes(http://pipes.yahoo.com/pipes/)服务。 这可以用来抓取和操作页面HTML,提取你想要的位。然后,可以使用Web服务模块在服务器端发布数据,或使用普通的javascript回调将数据直接发送到客户端浏览器。