HtmlParseHelper

class helper.HtmlParseHelper[源代码]

基类:object

提供网页数据获取、解析、并行处理的工具

Attributes Summary

AsyncIterTask

alias of Coroutine[Any, Any, AsyncIterable[helper.T]]

IterTask

alias of Coroutine[Any, Any, Iterable[helper.T]]

T

alias of TypeVar(‘T’)

Task

alias of Coroutine[Any, Any, helper.T]

Methods Summary

as_completed(tasks)

将多个协程任务加入事件循环并发运行, 返回异步生成器 每次迭代返回一个已经完成的协程结果, 返回结果不保证顺序

as_iter_completed(tasks)

将多个协程任务加入事件循环并发运行, 返回异步生成器 每次迭代返回一个已经完成的协程``结果中的元素``, 返回结果不保证顺序

close_session()

关闭 ClientSession

get(url[, params])

GET 方法, 使用随机 User-Agent, 出现异常时返回 None

head(url[, params])

HEAD 方法, 使用随机 User-Agent, 出现异常时返回 None

init_session([session])

初始化 ClientSession, 使用 get/post/head 方法之前需要调用一次, ClientSession 内部维护了连接池, 因此不建议每一个请求创建一个 session, 这里默认为每一个类创建一个 persistent session, 或者手动设置一个, 以实现复用, 在 __init__.py 中初始化 session 会出现 warning, 官方在 aiohttp 4.0 之后将只允许在协程中创建 session, See:

post(url[, data])

POST 方法, 使用随机 User-Agent, 出现异常时返回 None

set_dns_server()

设置自定义的 DNS 服务器地址

set_headers(url, kwargs)

为请求设置 headers, 使用随机 User-Agent

xml_xpath(xml_text, xpath)

支持 XPath 方便处理 Xml

xpath(html, xpath)

支持 XPath 方便处理网页

Attributes Documentation

AsyncIterTask

alias of Coroutine[Any, Any, AsyncIterable[helper.T]]

alias of Coroutine[Any, Any, AsyncIterable[helper.T]] .. autoattribute:: AsyncIterTask .. autoattribute:: IterTask .. autoattribute:: T .. autoattribute:: Task

Methods Documentation

static as_completed(tasks: Iterable[Coroutine[Any, Any, helper.T]]) AsyncIterator[helper.T][源代码]

将多个协程任务加入事件循环并发运行, 返回异步生成器 每次迭代返回一个已经完成的协程结果, 返回结果不保证顺序

参数

tasks – 协程列表, 协程返回类型为 T

返回

异步生成器, 元素类型为 T

static as_iter_completed(tasks: Iterable[Coroutine[Any, Any, Iterable[helper.T]]]) AsyncIterator[helper.T][源代码]

将多个协程任务加入事件循环并发运行, 返回异步生成器 每次迭代返回一个已经完成的协程``结果中的元素``, 返回结果不保证顺序

参数

tasks – 协程列表, 协程的返回类型为 Iterable[T]

返回

异步生成器, 元素类型为 T

async close_session()[源代码]

关闭 ClientSession

async get(url: str, params: Optional[dict] = None, **kwargs) Optional[aiohttp.client_reqrep.ClientResponse][源代码]

GET 方法, 使用随机 User-Agent, 出现异常时返回 None

async head(url: str, params: Optional[dict] = None, **kwargs) Optional[aiohttp.client_reqrep.ClientResponse][源代码]

HEAD 方法, 使用随机 User-Agent, 出现异常时返回 None

async init_session(session: Optional[aiohttp.client.ClientSession] = None)[源代码]

初始化 ClientSession, 使用 get/post/head 方法之前需要调用一次, ClientSession 内部维护了连接池, 因此不建议每一个请求创建一个 session, 这里默认为每一个类创建一个 persistent session, 或者手动设置一个, 以实现复用, 在 __init__.py 中初始化 session 会出现 warning, 官方在 aiohttp 4.0 之后将只允许在协程中创建 session, See:

参数

session – 用于复用的 ClientSession 对象

async post(url: str, data: Optional[dict] = None, **kwargs) Optional[aiohttp.client_reqrep.ClientResponse][源代码]

POST 方法, 使用随机 User-Agent, 出现异常时返回 None

set_dns_server() List[str][源代码]

设置自定义的 DNS 服务器地址

set_headers(url: str, kwargs: dict) str[源代码]

为请求设置 headers, 使用随机 User-Agent

static xml_xpath(xml_text: Any, xpath: str) Optional[lxml.etree.Element][源代码]

支持 XPath 方便处理 Xml

static xpath(html: str, xpath: str) Optional[lxml.etree.Element][源代码]

支持 XPath 方便处理网页