qq_36622158 2021-08-10 23:22 采纳率: 100%
浏览 116
已结题

python 爬虫 first=True不是第一个是真实的吗?

from requests_html import HTMLSession
se = HTMLSession()

url =' https://www.jipinwx.cc/daomubiji8/1586266.html' https://www.jipinwx.cc/daomubiji8/1586266.html'
r = se.get(url)
r.encoding = r.apparent_encoding
#print(r.text)
cc = r.html.xpath('//div[@class="contentbox"]', first=True).text
print(cc)
#这个first作用到底是什么?不添加first=True括号后面的text就会报错,但是既然是第一个为真实的意思,为什么会把网页上第二个元素也打印出来了,就是后面多了多余的文字,但是我也换过另外一个网站,只打印第一个,小说文字都没有,实在不明白怎么回事???

  • 写回答

1条回答 默认 最新

  • 八云黧 2021-08-10 23:48
    关注

    看了一下官方文档,first参数的意思是是否只返回第一个对象,因为正常的xpath返回的是一个element的列表,而first=true之后就是一个element对象,你可以对一个对象调用text属性,但不能对列表这么调用

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 8月16日
  • 已采纳回答 8月12日
  • 创建了问题 8月10日

悬赏问题

  • ¥15 全志H618ROM新增分区
  • ¥20 jupyter保存图像功能的实现
  • ¥15 在grasshopper里DrawViewportWires更改预览后,禁用电池仍然显示
  • ¥15 NAO机器人的录音程序保存问题
  • ¥15 C#读写EXCEL文件,不同编译
  • ¥15 MapReduce结果输出到HBase,一直连接不上MySQL
  • ¥15 扩散模型sd.webui使用时报错“Nonetype”
  • ¥15 stm32流水灯+呼吸灯+外部中断按键
  • ¥15 将二维数组,按照假设的规定,如0/1/0 == "4",把对应列位置写成一个字符并打印输出该字符
  • ¥15 NX MCD仿真与博途通讯不了啥情况