1、登录天猫网站
对于有些网站,需要登陆后才有可能获取到网页中的数据。天猫网站就是其中的网站之一。
2、搜索指定网页
这里我想要爬取的是杜蕾斯。因此我们直接搜索“杜蕾斯”。由于“杜蕾斯”的卖家有很多,这里我们只选取页面的第一个图片,进行其中的“评论数据”的爬取。
点击第一个图片,进入到我们最终想要爬取数据的网页。可以看到该页面有很多评论信息,这也是我们想要抓取的信息。
3、进行第一次请求测试
import pandas as pd import requests import re import time url = "https://detail.tmall.com/item.htm?spm=a220m.1000858.1000725.1.626d40c2tp5mYQ&id=43751299764&skuId=4493124079453&areaId=421300&user_id=2380958892&cat_id=2&is_b=1&rn=cc519a17bf9cefb59ac94f0351791648" headers ={ 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/537.36' } data = requests.get(url,headers=headers).text data
结果如下:
结果分析:明明评论信息就是在这个页面里面,我们这样请求,怎么得不到数据呢?难道是没有带着cokkies发送请求?我们接下来尝试带着cokkies发送请求。
4、进行第二次请求测试
import pandas as pd import requests import re import time url = "https://detail.tmall.com/item.htm?spm=a220m.1000858.1000725.1.626d40c2tp5mYQ&id=43751299764&skuId=4493124079453&areaId=421300&user_id=2380958892&cat_id=2&is_b=1&rn=cc519a17bf9cefb59ac94f0351791648" headers ={ 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/537.36' } data = requests.get(url,headers=headers).text data
结果如下:
结果分析:不科学哈!这次我已经带着cokkies发送了请求呀,为什么还是获取不到我们想要的数据,会不会“评论数据”根本就不再这个url中呢?那么真正的true_url究竟在哪里呢?下面我们慢慢解密。
5、怎么找到真正的true_url?
1)点击【鼠标右键】–>点击【检查】
2)点击【Network】
3)刷新网页
刷新网页以后,可以发现【红色方框】中,多了很多请求的url。