python-parsel
Parsel是一个使用XPath和CSS选择器(可选地与正则表达式结合)从HTML和XML提取数据的库
一、安装
官网:https://pypi.org/project/parsel/
- pip安装:pip install parsel 默认安装的是最新版
pip install parsel=1.6.0 目前官方最新版本 - PyCharm:File =》Setting =》Project:sintemple =》 Project:Interpreter =》点击右上角的加号(或者按快捷键Alt+Insert)=》在输入框中输入parsel,会出现一个只有parsel的一列,点击选择它 =》Install Package 等待安装完成就可以了(注:其中Specify version选中可以在下拉框中选择版本)

二、Selector
- Selector(text=None, type=None, namespaces=None, root=None,base_url=None, _expr=None)
创建解析HTML或XML文本的对象
参数:
text 在python2中是一个Unicode对象,在python3中是一个str对象
type 定义Selector类型,可以是"html",“xml"或者是None(默认),如果为None则默认选择为"html”
base_url allows setting a URL for the document. This is needed when looking up external entities with relative paths(允许为文档设置URL。在使用相对路径查找外部实体时,这是必需的) - Selector的对象方法
①. Selector.attrib()
返回基础元素的属性字典
②. Selector.css(query)
css选择器
③. Selector.get()
序列化并以单个unicode字符串返回匹配的节点
④. Selector.getall()
序列化并以第1个元素的unicode字符串列表返回匹配的节点
⑤. Selector.re(self, regex, replace_entities=True)
正则选择器
⑥. Selector.re_first(self, regex, default=None, replace_entities=True)
If the list is empty or the regex doesn’t match anything, return the default value (Noneif the argument is not provided)如果列表为空或正则表达式不匹配任何东西,返回默认值(如果没有提供参数,则返回’None’ )
⑦. Selector.remove()
Remove matched nodes from the parent for each element in this list.从父节点中删除列表中每个元素的匹配节点。
⑧. Selector.xpath(self, query, namespaces=None, **kwargs)
xpath选择器 - SelectorList的对象方法
SelectorList类是内置list类的一个子类,它提供了一些额外的方法。
①. attrib 返回第一个元素的属性字典。如果列表为空,则返回空dict
②. css(query) .css()对该列表中的每个元素调用方法,然后将其结果展平为另一个SelectorList。query 与 Selector.css()
③. extract() 调用.get()此列表中每个元素的方法,并将其结果展平,以unicode字符串列表形式返回。
④. extract_first(default=None) 返回.get()此列表中第一个元素的结果。如果列表为空,则返回默认值。
⑤. get(default=None) 返回.get()此列表中第一个元素的结果。如果列表为空,则返回默认值。
⑥. getall() 调用.get()此列表中每个元素的方法,并将其结果展平,以unicode字符串列表形式返回。
⑦. re(regex, replace_entities=True) 调用.re()此列表中每个元素的方法,并将其结果展平,以unicode字符串列表形式返回。默认情况下,字符实体引用由其对应的字符替换(&和和除外<。以传递replace_entities,False关闭这些替换。
⑧. re_first(regex, default=None, replace_entities=True) 调用.re()此列表中第一个元素的方法,并以Unicode字符串返回结果。如果列表为空或正则表达式不匹配任何内容,则返回默认值(None如果未提供参数)。默认情况下,字符实体引用由其对应的字符替换(&和和除外<。以传递replace_entities,False关闭这些替换。
⑨. remove() 从父级中删除此列表中每个元素的匹配节点。
⑩. xpath(xpath, namespaces=None, **kwargs) .xpath()对该列表中的每个元素调用方法,然后将其结果展平为另一个SelectorList。query 与 Selector.xpath()namespaces是用于将其他前缀添加到已注册的前缀的可选映射(字典)。与相对,这些前缀不会保存以备将来使用。 - 举例说明:
html代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset=

Parsel是一个Python库,用于从HTML和XML中提取数据,支持XPath和CSS选择器,可结合正则表达式使用。本文介绍了Parsel的安装、Selector的使用方法,包括其各种方法如.attrib(), .css(), .get(), .xpath()等,还提及了csstranslator模块和utils模块的相关功能。"
117304312,9490702,PyTorch LSTM与LSTMCell详解,"['深度学习', 'PyTorch', 'RNN', 'LSTM', 'LSTMCell']
最低0.47元/天 解锁文章

2083

被折叠的 条评论
为什么被折叠?



