Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何基于<;p>&书信电报;部门>;或<;br>;标签_Python_Html Parsing_Beautifulsoup_Lxml - Fatal编程技术网

Python 如何基于<;p>&书信电报;部门>;或<;br>;标签

Python 如何基于<;p>&书信电报;部门>;或<;br>;标签,python,html-parsing,beautifulsoup,lxml,Python,Html Parsing,Beautifulsoup,Lxml,我正在尝试根据用户的位置将被刮下的网页分成不同的部分 或标签。因此,第一个标记将包含从到所讨论的标记的所有数据/标记。我已经从lxml项目中看到了类似etree的东西,但它看起来是相切的 我从“普通”html解析中看到的区别是所选标记的数量。我想选择多个标记及其数据并分别保存它们,而“普通”html解析工具只提供选择一个独立标记/标记(使用xpath等)并使用它的功能。(我对网络编程也很陌生) 我曾想过一种方法,保存文件偏移量,然后继续剪切和切片输入文件,以实现我的目标,但充其量这似乎是一种黑客

我正在尝试根据用户的位置将被刮下的网页分成不同的部分

标签。因此,第一个
标记将包含从
到所讨论的
标记的所有数据/标记。我已经从lxml项目中看到了类似etree的东西,但它看起来是相切的

我从“普通”html解析中看到的区别是所选标记的数量。我想选择多个标记及其数据并分别保存它们,而“普通”html解析工具只提供选择一个独立标记/标记(使用xpath等)并使用它的功能。(我对网络编程也很陌生)

我曾想过一种方法,保存文件偏移量,然后继续剪切和切片输入文件,以实现我的目标,但充其量这似乎是一种黑客行为

我如何才能实现我的既定目标,请帮助

谢谢。

请使用。它是解析HTML的一个很棒的python工具

下面是一个示例,说明解析HTML是多么容易-它打印标记名(p)和所有
标记的内容。然后找到id为“header”的元素

这只是一个片段-BeautifulSoup提供了许多过滤HTML文档的方法

import sys
# add path to beautifulsoup library
sys.path.append('/usr/local/var/beautifulsoup')
# import it
from bs4 import BeautifulSoup

soup = BeautifulSoup(open("yourfile.html"))
for tag in soup.find_all('p'):
    print tag.name, tag.text

soup.find(id="header")

beautifulsoup将是一个很好的使用工具你好,谢谢你的回答,但是我应该在beautifulsoup中使用什么呢。您能否更具体地说明我如何将html树的各个部分保存到单独的文件中