scrapy爬动态网址哔哩哔哩
这次,我们来爬取哔哩哔哩的热门视频,爬去其中的标题与详细页的同时观看人数和弹幕的实时在线,并存入mongodb 打开其中一个详情页发现里面是动态的,用静态网页的方法是爬不出来的 这次我们用抓包的方式来完成此次任务,也就是用chrome自带的开发者工具,按F12使用 用xhr筛选,其中的response等来筛选自己所需要的数据,并从Headers里拿到它的url,因为我们要爬八个网址,所以我们要用一个通用的式子来表示它,用正则表达式来拼凑出来。 我们找到了三个网址 我们发现这个网页的url是进不去的,但是我们发现response里面有我们需要的东西,用response.body.decode()来进行提取,再用正则提取。 根据dm二字我们发现了弹幕的url,进去后发现弹幕都在里面,这个即是我们所需要的url。 这里response里面有我们需要的coin等要点,这样就找到了所需要的所有东西。 接下来的难点呢,就是怎样拼凑出我们所通用的表达式 这里的话具体参照下方代码,用正则表达式等方式,表达出来 spider代码如下 # -*- coding: utf-8 -*- import scrapy import json from bilibili . items import BilibiliItem import re import time import requests class