📅  最后修改于: 2023-12-03 15:34:42.777000             🧑  作者: Mango
requests_html 是一款基于 requests 和 Pyppeteer 的 Python 爬虫库,用于爬取动态网站的数据。这个库提供了许多对 HTML 和 JavaScript 进行解析和渲染的功能,同时也支持 HTTP 协议的许多特性,例如 Cookie、Header 等。
requests_html 中的响应对象是一个 HTMLResponse 对象,里面有许多有用的信息,包括请求 URL、状态码、文本内容、Cookies 和 Headers 等等。在这篇文章中,我们将介绍 requests_html 中的响应状态 - Html。
在 requests_html 中,响应状态 - Html 表示用于解析 HTML 文档的库。默认情况下,requests_html 会将响应文本渲染为 HTML 文档,然后使用 lxml 库进行解析。如果您想使用其他库进行解析,可以指定不同的响应状态。
以下是 requests_html 中支持的响应状态 - Html 列表:
您可以在构造 HTMLResponse 对象时指定响应状态,例如:
from requests_html import HTMLSession, HTMLResponse
session = HTMLSession()
response = session.get('https://example.com')
html_response = HTMLResponse(
url=response.url,
html=response.content,
headers=response.headers,
status_code=response.status_code,
encoding=response.encoding,
history=response.history,
prepare=True,
browser=None,
codec_errors='strict',
html_reponse_cls=None,
html_parser='lxml'
)
在这个例子中,我们使用了 HTMLResponse
类,同时指定了响应状态为 lxml
。
另外,您还可以在 HTMLSession 对象中指定默认的响应状态。这样,当发出请求并成功得到响应后,响应对象的响应状态将自动设置为默认的响应状态。
例如:
from requests_html import HTMLSession
session = HTMLSession()
session.browser = None
session.headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 Edge/16.16299' }
session.verify = False
session.respocommon_kwargs = {'html_parser': 'lxml'}
在这个例子中,我们将默认的响应状态设置为 lxml
。
requests_html 是一款非常强大的 Python 爬虫库,它能够帮助您爬取动态网站的数据。在使用 requests_html 时,了解响应状态 - Html 对于您选择合适的解析库非常重要。通过本文的介绍,您应该可以更好地理解 requests_html 中的响应状态 - Html。