Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/311.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/86.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 使用BeautifulSoup按id获取div的内容_Python_Html_Python 2.7_Beautifulsoup_Html Parsing - Fatal编程技术网

Python 使用BeautifulSoup按id获取div的内容

Python 使用BeautifulSoup按id获取div的内容,python,html,python-2.7,beautifulsoup,html-parsing,Python,Html,Python 2.7,Beautifulsoup,Html Parsing,我正在使用python2.7.6、urllib2和BeautifulSoup 从网站提取html并存储在变量中 如何使用beautifulsoup仅显示id为的div的html内容 <div id='theDiv'> <p>div content</p> <p>div stuff</p> <p>div thing</p> div内容 分区资料 div事件 会是 <p>div content<

我正在使用python2.7.6、urllib2和BeautifulSoup

从网站提取html并存储在变量中

如何使用beautifulsoup仅显示id为的
div
的html内容

<div id='theDiv'>
<p>div content</p>
<p>div stuff</p>
<p>div thing</p>

div内容

分区资料

div事件

会是

<p>div content</p>
<p>div stuff</p>
<p>div thing</p>
div内容

分区资料

div事件


加入div标签的元素:

从bs4导入美化组
data=”“”
div内容

分区资料

div事件

""" 汤=美汤(数据) div=soup.find('div',id='theDiv') 打印“”。加入(映射(str,div.contents))
印刷品:

<p>div content</p>
<p>div stuff</p>
<p>div thing</p>
div内容

分区资料

div事件


自4.0.1版以来,有一个函数
解码内容()

>soup=BeautifulSoup(“”)
div内容

分区资料

div事件

""") >>>打印(soup.div.decode_contents()) div内容

分区资料

div事件


有关此问题解决方案的更多详细信息:

似乎有效!你能解释一下打印“”的过程吗?join(map(str,div.contents))@user8028当然,
contents
实际上包含了标记的所有子项,这些子项可以表示为字符串或
标记
类实例。应用
map(str,…)
有助于将每个子项转换为字符串。希望有帮助。我在div的内容中有一个特殊字符(€)。我如何将其编码为ascii,以便它可以打印到终端或写入文件?我总是收到错误
UnicodeCodeerror:“ascii”编解码器无法对位置31处的字符u'\u20ac'进行编码:序号不在范围内(128)
<p>div content</p>
<p>div stuff</p>
<p>div thing</p>
>>> soup = BeautifulSoup("""
<div id='theDiv'>
<p>div content</p>
<p>div stuff</p>
<p>div thing</p>
""")

>>> print(soup.div.decode_contents())

<p>div content</p>
<p>div stuff</p>
<p>div thing</p>