登录网站并抓取流媒体数据

时间:2011-02-15 02:52:43

标签: python screen-scraping

我不是一个真正的程序员,但是出于一般的好奇心问这个问题。我最近访问了一个网站,我登录了一个页面,然后没有离开,该页面上的数据在我眼前刷新。

是否可以模仿浏览器(我使用的是Chrome)并登录网站,导航到某个页面,然后“抓取”使用Python进入的数据?我想存储和分析它。

如果是这样,更进一步,是否可以与网站互动?单击我知道名称的按钮?

提前致谢。

2 个答案:

答案 0 :(得分:3)

如果数据“在您眼前刷新”,则可能是AJAX(页面中的javascript从服务器中提取新的页面数据)。

有两种方法可以解决这个问题;

  1. 使用Selenium,你可以包装一个实际的浏览器,它将加载页面,运行javascript,然后你可以从活动页面中获取页面位。

  2. 你可以看看页面中的AJAX正在做什么(它是如何要求更新,它是什么回来的)以及编写python代码来模拟它。

  3. 需要花费大量的时间和精力来建立; Selenium有点健壮,直接python查询效率更高,YMMV。

答案 1 :(得分:1)

要在Python中模拟浏览器行为,可以使用mechanize模块。您引用的“流媒体”数据可能是flash或javascript。如果它是闪存,它将是二进制的,你将无法获取它。如果是javascript,再次mehanize似乎have problems处理它。