首页 > 技术文章 > requests-html的基本使用

wangshx666 2020-08-13 00:00 原文

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']

推荐阅读