摘要:
做爬虫的时候最头疼的就是遇到一些动态加载的页面或者是一些动态生成的链接。比如我们的博客园就是个例子:凤凰网的评论链接也是一样:今天我们就用Webkit来解决这个问题。预备知识可以看一下我前面几篇文章,准备工作参照利用InjectedBundle定制自己的Webkit(二)中的客户端程序。一切就绪之后我们开始!首先介绍一些重要的函数和回调在创建一个Page之后我们可以设置一些回调函数,其中有一个是:WKPageLoaderClient::didFinishDocumentLoadForFrame原型是:typedef void (*WKPageDidFinishLoadForFrameCallb 阅读全文
摘要:
之前做聊天室时,由于在聊天室中提供了新闻阅读的功能,写了一个从网页中抓取信息(如最新的头条新闻,新闻的来源,标题,内容等)的类,本文将介绍如何使用这个类来抓取网页中需要的信息。本文将以抓取博客园首页的博客标题和链接为例:上图显示的是博客园首页的DOM树,显然只需提取出class为post_item的div,再重中提取出class为titlelnk的a标志即可。这样的功能可以通过以下函数来实现:/// /// 在文本html的文本查找标志名为tagName,并且属性attrName的值为attrValue的所有标志/// 例如:FindTagByAttr(html, "div" 阅读全文