基本流程
-
创建sitemap:定要爬取网站的域名 构建爬虫拓扑图
-
创建selector:选取当前页面需要爬取的元素可以是文本、链接、弹出框、按钮等等,不同的selector可以是父与子的关系
-
view_data:先查看爬虫拓扑图,然后查看爬取的数据并导出
案例爬取百度
基本结构
root——div——text
div配置如下 element要选中一个包含text内容的元素 一般是div/li这样的布局元素 选中multiple表示要把样式相同的div全都选中,与爬虫的思路几乎一致
text配置如下
因为我们上层div已经是multiple了,相当于已经有循环了所以在这里我们不要选multiple
参数介绍:
Id是selector的标识
type表示要爬取的元素类型
selector用于手动选择页面元素来表示抓取的元素,选中以后会出现c,s,p用于微调
c表示dom对象的子元素
s表示dom对象的同辈元素
p表示dom对象的父元素
Regex用于正则匹配用于筛选
回到selector界面一个data_preview 一个简单的scraper就完善好了,不过这只是单页的内容。
sitemap — scrape 开始爬取 –browse 浏览数据 — 最后export导出即可
翻页的实现
参考一般的爬虫、翻页一般的实现方式是
网址有规律 自己拼接url实现翻页 例如网址为www.4399.com/page=1 那么只需要在sitemap中设置start_url为www.4399.com/page=[m-n:step]
m为起始页
n为终止页
step为步数
点击翻页器
创建link类selector 父元素选_root和link因为一页一页link的迭代是父元素与子元素的关系
创建需要爬取的element父元素、text,父元素也选_root和link因为爬取了link才会有翻页以后的element、text
理想sitemap图
如此迭代 –sitemap—scrape—browse-export
点击更多进行翻页、动态加载翻页
使用element click 秒会
向下滚动形式
element scroll down可以模拟鼠标向下滚动加载
访问二级页面
我们在之前将翻页器的时候其实已经用到了这种思想,先爬来二级页面的link再访问
所以创建父选择器link类型选中二级页面对应的链接
再直接进入二级页面用之前的方法创建子选择器选定要爬取的内容即可。
Comments NOTHING