Xpath解析库的使用

 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