import requests_html
from requests_html import HTMLSession
# 获取请求对象
session = HTMLSession()
#发送get请求
sina = session.get('https://news.sina.com.cn/')
# 获取响应文本信息
print(sina.text)
# 获取链接(links与abolute_links)
# 得到所有的链接,返回的是一个set集合
print(sina.html.links)
# 若获取的链接中有相对路径,我们还可以通过absolute_links获取所有绝对链接
print(sina.html.absolute_links)
# request-html支持CSS选择器和XPATH两种语法来选取HTML元素。首先先来看看CSS选择器语法,它需要使用HTML的 find 函数来查找元素。
'''
CSS选择器 and XPATH
1.通过css选择器选取一个Element对象
2.获取一个Element对象内的文本内容
3.获取一个Element对象的所有attributes
4.渲染出一个Element对象的HTML内容
5.获取Element对象内的特定子Element对象,返回列表
6.在获取的页面中通过search查找文本
7.支持XPath
8.获取到只包含某些文本的Element对象
'''
# 获取id为content-left的div标签,并且返回一个对象
content = sina.html.find('div#content-left', first=True)
# 获取Element对象内的指定的所有子Element对象,返回列表
a_s = content.find('a')
print(a_s)
# 获取content内所有文本
print(content.text)
# 获取content内所有属性
print(content.attrs)
#获取单个属性
href = content.attrs['href']