1 import requests # 导入requests 请求库
2 from lxml import etree # 导入lxml解析库
3
4 def getHTMLtext(url):
5 try:
6 r =requests.get(url,timeout=20) #用get方法 超时时间20秒
7 r.raise_for_status()
8 r.encoding = r.apparent_encoding #字符编码
9 return r.text #返回获取文本
10
11 except:
12 return "产生异常"
13
14 if __name__ == '__main__':
15 url = "https://book.douban.com/subject/1084336/comments/" #访问豆瓣书评网址地址
16 r =getHTMLtext(url)
17 s = etree.HTML(r) #解析
18 # print(s.xpath('//*[@]/ul[1]/li[1]/div[2]/p/span/text()')) #copy xpath 获取单条评论
19 # print(s.xpath('//*[@]/ul[1]/li[2]/div[2]/p/span/text()'))
20 # print(s.xpath('//*[@]/ul[1]/li/div[2]/p/span/text()')) #copy xpath 获取当前页全部评论
21 # print(s.xpath('//div[@class="comment"]/p/span/text()')) # 手写 获取当前页全部评论
22 print(s.xpath('//div[@class="comment"]/p/span/text()')[0]) # 手写 获取第一条评论
23
24 # 获取文本内容用text() 获取注释用comment()
25 # 获取其他任何属性用@xx 如@href @src @value