首页 > 代码库 > 再论pyquery
再论pyquery
发现对于QQ群
空间文件的抓取毫无办法。
QQ空间的代码可圈可点:
做了一个js的“客户端”,第一次加载时,将文件的列表信息全部抓取出来,然后基于js进行翻页和排序。
因此,想要抓取js渲染的dom,是不可能的,此处只能用js或者jq来操作了。
对于这种情况,得用js写“爬虫”逻辑。
附上qq空间群文件的抓取逻辑,如下:
var getDom = function(cls){return document.getElementsByClassName(cls);};var clickPage = function(index){ pages = getDom("ui_mr5"); for(j=0;j<pages.length;j++){ if(pages[j].innerText==(‘‘+index)) pages[j].click(); }};var showAllResource =function(page_count){ for(p = 1; p<=page_count; p++){ clickPage(p); names = getDom("td_name"); sizes= getDom("td_size"); authors = getDom("td_uploaded_author"); times = getDom("td_time"); for(i =0 ;i<names.length;i++){console.log(names[i].title+","+sizes[i].innerText+","+authors[i].innerText+","+times[i].innerText);} }};
调用方法,直接在浏览器的console里面执行以上代码后调用:showAllResource(最大的页码);
再论pyquery
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。