import requests
import re
from bs4 import BeautifulSoup
import time
header={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36'}
res=requests.get('https://y.qq.com/n/yqq/toplist/26.html#t1=2019&t2=20&t3=song&t4=1&t5=1',headers=header)
soup=BeautifulSoup(res.text,'lxml')
print(soup)
这是QQ音乐的官方网站,想从中得到歌曲的信息,用这个方法得到的代码比浏览器中代码缺少很多,没去歌曲的信息,只有一些界面的代码
废话,你的header信息就一个,直接就被反爬取了,补全它.
而且你这样爬取也有问题,直接怕一个网页,网页调用的其他api也没有爬取,肯定数据会缺失
用fiddler抓包看下,特别注意user-agent cookie referer postdata这几个地方,一定要和浏览器的一样
很多网站都是javascript渲染的动态网页,直接用get是抓不到的