Python爬取动态生成的网页(框架)需要具备哪些知识或者使用哪些库?

我想用Python做一个结构大致为”歌手-歌曲名-专辑名-歌曲时长“的数据库,搜索许多网页,发现QQ音乐会显示歌曲时长,比如,许巍的所有单曲:http://y.qq.co... 我想用Python做一个结构大致为”歌手-歌曲名-专辑名-歌曲时长“的数据库,搜索许多网页,发现QQ音乐会显示歌曲时长,比如,许巍的所有单曲:http://y.qq.com/#type=singer&id=3376

但是QQ音乐貌似是用的是某Javascript框架(我对这块儿了解很少),所以无法通过直接读取网页源码的方式进行获取。另外,即使使用Chrome显示的”框架源代码“,也无法获取当前页面所有的歌曲的长度(我的环境下框架源代码中显示的只有12首,而不是整个页面显示的30+首)。

题主对于BeautifulSoup以及Python内置的相关库有初步了解,但是scrape动态网页的经验没有。我通过搜索,知道有一个Ghost.py,但是貌似仍然无法满足我的需求。

希望有类似经验的朋友能指点一下:为了完成这个目标,1. 我需要了解哪些方面的知识?(比如,这个任务对JS要求高吗?题主只看过Mozilla上的一个指南)2. 需要使用哪些外部的库 3. 如果可以的话,能否告知这个库里面与我的目标直接相关的有哪些知识?

如果有比较有帮助的一些文章,也可以贴上来呀。十分感谢!
展开
 我来答
匿名用户
推荐于2016-08-06
展开全部
  1、抓取网页,模拟登陆等背后的通用的逻辑和原理;
  2、以提取songtaste网页中标题为例,详解如何抓取网站并提取网页内容;
  3、以模拟登陆百度为例,详解如何模拟登陆网站;
  4、以抓取网易博客帖子中的最近读者信息为例,详解如何抓取动态网页中的内容;
  5、详解了在模拟登陆和抓取动态网页过程中,如何用对应的网页分析工具,如IE9的F12,Chrome的Ctrl+Shift+J,Firefox的Firebug,去分析出对应的逻辑;
  6、针对抓取网站,模拟登陆,抓取动态网页,全部给出了完整的可用的,多种语言的示例代码:Python,C#,Java,Go等。
匿名用户
2013-04-15
展开全部
对于动态生成(前端JS后继运算加载)的页面,只看html源代码是没有用的,需要由webkit等浏览器引擎执行过js代码之后,才能使页面完全展现出来.
可以通过直接使用浏览器内核输出页面的方式来得到最终代码.
我使用的是phantomjs来得到最终页面代码.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
bdwisyou7d
2013-04-15 · TA获得超过1.3万个赞
知道大有可为答主
回答量:3774
采纳率:81%
帮助的人:1069万
展开全部
需要网页编程基础,懂一些简单的ajax,需要会一种网页抓包调试工具。在Mozilla里有一个firebug。

如果有人教你,几天。我遇到一个人,教了她一个星期也没有弄会。

自己摸索有些难。可能也需要一个星期左右时间。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友87b2a52
2013-04-14 · 知道合伙人软件行家
百度网友87b2a52
知道合伙人软件行家
采纳数:523 获赞数:3490
毕业于南京大学,硕士学位。10年软件研发经验。现任信息系统架构师。

向TA提问 私信TA
展开全部
哦, 现在很多网站用了ajax,会动态的加载页面内容。你可以使用python模仿每次动态加载的请求就可以了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
静开灵柠2g
2013-04-27 · 超过15用户采纳过TA的回答
知道答主
回答量:70
采纳率:0%
帮助的人:24.4万
展开全部
弱弱的问一下楼主有没有什么进展,我也在爬瀑布流网站,可以交流下经验吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式