爬虫如何获取未展开的div标签

爬虫获取的网页源码如图

img

id="wrapper"的div标签无法展开,无法获取里面的内容,用selenium感觉效率太低了,能有什么办法吗?

实际div展开如下图

img

因为div里的内容,使用过ajax加载的,所以爬虫获取的网页源码是没有里面的内容的,这种数据相对来说方便一点,直接可以抓包拿到相应的ajax请求,然后直接reqeusts模块发送请求就可以拿到数据了,具体步骤:

  1. 打开浏览器抓包页面,点击网络(network)-> XHR:

    img

  2. 刷新页面,在刷新的ajax响应里面找到你需要的数据
  3. requests模拟发送此条请求就可以了

什么叫无法展开呀,那是你没有获取到那部分的数据
一个页面由多个url请求返回的数据组合成的,而你只是请求了一个url。你请求的url没有返回你要的数据而已。
你可以在页面上,鼠标右键点击检查,选择网络,然后刷新页面,然后你会看见一堆url请求。你去看那个url的响应内容返回了你要的数据,你就去请求它

这个不叫无法展开,因为你的这个网页那部分数据是动态填充的,只能使用selenium模拟,或者直接去找到对应接口,然后请求接口直接拿数据。

无法展开是因为压根儿就没有;要么没请求那部分,要么请求了还没加载

参考其获取Ajax加载数据的做法
https://blog.csdn.net/m0_68103523/article/details/124800202?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522166184267916781667851802%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=166184267916781667851802&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduend~default-1-124800202-null-null.142^v42^control,185^v2^tag_show&utm_term=%E7%88%AC%E8%99%AB%E8%8E%B7%E5%8F%96%E5%8A%A8%E6%80%81%E5%8A%A0%E8%BD%BD%E6%95%B0%E6%8D%AE&spm=1018.2226.3001.4449