关于#爬虫#的问题,如何解决?

我是刚接触爬虫,我跟着教程的操作,教程获取到了所有图片,而我只获取了一个,
我大概的认为我的问题在 div_list 这一行,可是图片地址在14层div嵌套下,还有好几个div标签都都是全部照片的div标签

img


以上都任何都是全部的的div标签
欢迎来为我解答,感谢!



import requests
from lxml import etree


def piliangmn():
    # 1.先获取源代码
    url = "https://www.kanxiaojiejie.tk/"
    headers = {
        'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36'}
    r = requests.get(url, headers=headers).text
    # r是源代码
    # 2.analyze 源代码,获取所有图片地址
    ret = etree.HTML(r)  # 先转换成xml类型化
    # 获取任意位置的html标签下面的body标签下面div[4]标签下面div标签
    div_list=ret.xpath('//html/body/div[4]/div')
    i=1
    for div in div_list:#每一次遍历的类型都xml类型
        # 获取div下面的任意位置的img标签
        src=div.xpath('.//img/@src')[0]#     “.”代表当前
        print(src)


if __name__ == '__main__':
    piliangmn()

div_list=ret.xpath('//*[@class="gridsoul-posts gridsoul-posts-grid"]//img/@src')
src=[]
for i in div_list:
    src.append(str(i))

获取div_list的时候,使用相对路径也就是//,否则只会找到一层,修改后的代码:

div_list = ret.xpath('//html/body/div[4]//div')

有帮助的话,请点采纳~