鱼C论坛

 找回密码
 立即注册
查看: 1639|回复: 4

xpath抓取返回空列表

[复制链接]
发表于 2020-10-8 16:24:00 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
用xpath抓数据,在浏览器上显示能抓到,但是到Python里面返回空列表的情况吗
all_url的值是空


import requests
from fake_useragent import UserAgent
from lxml import etree


def get_html(index_url):
    headers={
        "User-Agent":UserAgent().chrome
    }
    resp=requests.get(index_url,headers=headers)
    resp.encoding='gbk'
    if resp.status_code==200:
        return resp.text
    else:
        return None
def parse_index(html):

    e=etree.HTML(html)

    all_url=e.xpath('//div[@class="channel-detail movie-item-title"]/a/@href')
    return ['https://maoyan.com{}'.format(url)for url in all_url]

def main():
    index_url="https://maoyan.com/films"
    html=get_html(index_url)

    moive_url=parse_index(html)
    print(moive_url)


if __name__ == '__main__':
    main()
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-10-8 16:32:29 | 显示全部楼层
浏览器看到的网页源码  != 爬取到的网页数据

你用xpath提取前,先打印看下爬到了什么,有没有数据在里面
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-10-8 17:02:35 | 显示全部楼层
疾风怪盗 发表于 2020-10-8 16:32
浏览器看到的网页源码  != 爬取到的网页数据

你用xpath提取前,先打印看下爬到了什么,有没有数据在里 ...

我已经知道了,有个反爬机制,在请求头里面加个cookie就行了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-10-8 17:04:05 | 显示全部楼层
有个反爬机制,在请求头里面加个cookie就行了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-8 21:53:42 | 显示全部楼层
解决了请给 疾风怪盗 最佳
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-18 10:03

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表