import requests
from lxml import etree
class Spider(object):
def start_request(self):
#1.请求拿到小说名创建文件夹
response = requests.get("https://www.qidian.com/all")
html = etree.HTML(response.text)
Bigtit_list = html.xpath('//<div[@class="book-mid-info"]/h2/a/text()')
Bigsrc_list = html.xpath('//<div[@class="book-mid-info"]/h2/a/@href')
print(Bigtit_list, Bigsrc_list)
spider = Spider()
spider.start_request()
C:\Users\acer\PycharmProjects\pythonProject\venv\Scripts\python.exe C:/Users/acer/PycharmProjects/pythonProject/有声小说网站/小说抓取.py
Traceback (most recent call last):
File "C:/Users/acer/PycharmProjects/pythonProject/有声小说网站/小说抓取.py", line 15, in <module>
spider.start_request()
File "C:/Users/acer/PycharmProjects/pythonProject/有声小说网站/小说抓取.py", line 9, in start_request
Bigtit_list = html.xpath('//<div[@class="book-mid-info"]/h2/a/text()')
File "src\lxml\etree.pyx", line 1597, in lxml.etree._Element.xpath
File "src\lxml\xpath.pxi", line 305, in lxml.etree.XPathElementEvaluator.__call__
File "src\lxml\xpath.pxi", line 225, in lxml.etree._XPathEvaluatorBase._handle_result
lxml.etree.XPathEvalError: Invalid expression
Process finished with exit code 1
我觉得问题主要是看lxml.etree.XPathEvalError: Invalid expression
但是我根本没有找到什么解决方法,欢迎帮忙解答一下
Bigtit_list = html.xpath('//<div[@class="book-mid-info"]/h2/a/text()')
div前面的<去掉 改成
Bigtit_list = html.xpath('//div[@class="book-mid-info"]/h2/a/text()')
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!