c爬虫抓取网页数据(电商商品评论网络抓取实战_阿里巴巴开发者网站_uweb3_)
优采云 发布时间: 2021-12-04 19:03c爬虫抓取网页数据(电商商品评论网络抓取实战_阿里巴巴开发者网站_uweb3_)
c爬虫抓取网页数据一直让很多新手望而却步,原因在于现在网站抓取都是网页直接生成request的连接,这样必然会存在一些风险。本人建议使用爬虫+request协同工作,这样可以有效避免那些意外。在爬虫和request协同工作中首先有一点非常重要:会抓取的人一定会使用request协同工作,而不会抓取的人就有可能需要使用网页下载工具。
那么可以告诉你现在最流行的两个,一个是python爬虫,一个是开源项目(代替request协同工作)scrapy。scrapy开源抓取第一步先去官网了解下scrapy怎么用,以及scrapy有哪些接口等基础知识。下面简单举一个例子。想抓取苏宁易购苏宁商城苏宁易购商城的评论。我们用scrapy爬虫框架抓取苏宁易购苏宁易购商城买家评论的核心接口,请看下面图片。
连接商品标题连接评论内容可以看到scrapy有非常多的核心接口和beanstream,从而大大提高爬虫工作效率。接下来我们对每个接口进行详细介绍。第一个是电商商品评论接口:关于商品评论网络抓取实战_阿里巴巴开发者网站_uweb3_阿里开发者网站-阿里云大学第二个是说明库接口:itemiditemidapikeyitemidapiurl32122348674这个接口有非常丰富的布局有针对、年龄、购买次数、收货地址等信息有cookie(需要登录以后才能使用),这里用到的高级api就是get请求,但是对于经常写爬虫的同学来说要非常清楚一点就是cookie的问题,一般抓取一些新闻网站或者一些用户级别高的网站一般默认会有get请求,这种请求在不同的数据库上也都会保存到一个独立的字典中。
scrapy中的api是通过在文件的beans目录下category.py中模拟api执行来更新以上参数信息的,为了解决类似的问题,我们在python代码中要能够动态调用scrapyapi.login()api.useragent()api.userinfo()api.getspider()api.pagevalue(),以及自己本地添加一条rests.saver().save等方法。
那么不同的接口方法会有怎样的不同呢?图片中蓝色部分是接口,红色部分是相应参数。那么我们先来说一下图片中红色部分的三个参数。pagevalue类似前面讲到,实际上它是cookie。scrapy对于cookie的保存是动态的,在抓取一个网页以后scrapy会根据该网页爬取的数据状态动态保存cookie,并且随机获取爬取一个页面的cookie对应的值,比如刚才例子抓取的网站如果是user-agent返回一个json文件,一般我们会获取该user-agent中的所有cookie(ok返回json文件),这样的话这个cookie有50%的可能性和一个浏览器的host绑定,有50。