strivepan 2021-05-06 20:50 采纳率: 100%
浏览 35
已采纳

爬取网站的title名称名字,为什么遍历打印不出来.是加密了吗?求问

# 分析:

import requests
from lxml import etree
# 图片地址:
url = 'https://sc.chinaz.com/tupian/meinvxiezhen.html'

headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.93 Safari/537.36'
}

# 发送请求获取响应
res = requests.get(url=url, headers=headers)

html = etree.HTML(res.text)

# 图片和地址的xpath
title = html.xpath('//div[@id="container"]/div[*]/div/a/img/@alt')
img_url = html.xpath('//*[@id="container"]/div[*]/div/a/img/@alt')
# print(title)
for i in title:
    i2 = 'http:' + i
    print(i2)


# 标题xpath     //*[@id="container"]/div[*]/div/a/img/@alt
# 地址xpath     //*[@id="container"]/div[*]/div/a/img/@src



  • 写回答

1条回答 默认 最新

  • 江天暮雪丨 2021-05-07 00:54
    关注

    我运行了你的代码,并没有打印不出来的问题,只是打印出来的是乱码,在获取到响应后更改字符编码为 utf-8即可正常显示。

    ...
    # 发送请求获取响应
    res = requests.get(url=url, headers=headers)
    res.encoding = 'utf-8'
    html = etree.HTML(res.text)
    ...
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    strivepan 2021-05-07 04:11

    好的,谢谢,忘记编码和解码了。

    回复
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部