我欲疾风前行 2020-04-30
简述:BeautifulSoup 外, python常用的解析HTML、XML的第三方库:lxml, lxml中语法为xpath
1. 使用爬取的页面数据,来定义一个对象。
2. 使用xpath来解析这个对象中的标签树。
"""lxml使用xpath语法,来解析HTML""" from lxml import etree import requests from fake_useragent import UserAgent url = "https://www.qidian.com/rank/yuepiao?page=1" headers = { ‘User-Agent‘: UserAgent().random } r = requests.get(url, headers=headers) print(‘---返回值: ‘, r.status_code, ‘---响应编码: ‘, r.encoding) print(‘返回数据: ‘, r.text) # 定义etree的HTML对象 e = etree.HTML(r.text) # 使用.xpath语法,编写逻辑 # ‘//h4/a/text()‘: 某h4标签下的a标签中的内容 # ‘//p[@class="author"]/a[1]/text()‘: 某p标签,class属性为“author”,下面的第一个a标签,下的内容 book_names = e.xpath(‘//h4/a/text()‘) authors = e.xpath(‘//p[@class="author"]/a[1]/text()‘) print(book_names) print(authors)