我试着用‘resquests’库学习web抓取,在所有的教程中,选择器html.find('.class')可以很好地找到一个CSS 'class‘并返回里面的文本。
我的例子:
from requests_html import HTMLSession
s = HTMLSession()
link = 'https://prev.lifestylegarden.uk/simple-page.html'
f = s.get(link)
title = f.html.find('.title', first=True).text
print(title)在我的测试HTML页面中,我有:<h1 id="title">Welcome to our simple page project</h1>和我想返回:
# Welcome to our simple page project
但是在最后,我得到了从H1开始到结束的整个页面文本,没有HTML标记。
我遵循2-3个不同的教程和不同的网站进行测试,每个人都是这样写的,并且正确地从“类”中获得字符串,而不是整个站点。
我是不是遗漏了什么?
谢谢你的大力支持。
发布于 2022-04-07 04:16:52
我找到了问题的根源。
发生此错误时,我使用的是Python3.9。
我不得不将该版本降级为3.6,以使其正常工作:
conda create -n envpy-3.6 python=3.6 anaconda这将创建一个名为envpy- 3.6 的本地环境,该环境允许我创建一个本地版本的3.6来处理这些项目。
activate envpy-3.6这确实激活了环境。
https://stackoverflow.com/questions/71760941
复制相似问题