爬取思路
1、获取人气排行榜信息页面,从中提取到每个游戏url
2、把获取到的url加入到队列中
3、从队列中获取url 进行请求获取详情页
4、从详情页获取信息,提取到游戏的信息以及评论信息
代码实现
1、创建一个爬虫类
class Game():
def __init__(self,url):
self.start_url = url
#url队列
self.que = deque()
#页面队列
self.page_que = deque()
self.headers={
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.87 Safari/537.36",
}
2、请求排行榜页面从中获取,从页面中提取每个游戏的连接
按f12检查,刷新页面抓取请求包,进行分析。滚动条向下拉动会出现加载更多,感觉像是Ajax请求。但是通过抓包无法得到ajax请求连接。通过请求页面,对请求的页面的html分析得到,此页面就是个静态页面。我们可以利用xpath可以获取到我们想要的信息。把获取到的url加入到队列中
#获取url
def get_list_url(self):
#列表url