Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/329.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/1/firebase/6.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 松动元件,如;无”;加入";。“字符串”;美州司令部_Python_Html_Beautifulsoup - Fatal编程技术网

Python 松动元件,如;无”;加入";。“字符串”;美州司令部

Python 松动元件,如;无”;加入";。“字符串”;美州司令部,python,html,beautifulsoup,Python,Html,Beautifulsoup,我是编程新手,所以我不敢问这个问题。然而,到目前为止,我在浏览这个页面时找不到答案 我用BeautifulSoup摘录了一份德国报纸的段落。它工作得很好,但是当我将.string命令添加到包含段落(包括标记)的变量中时,有些段落似乎消失了/显示为“None” 这是我的代码: import requests from bs4 import BeautifulSoup url = "https://www.zeit.de/wirtschaft/2020-05/konsumstimmung-hand

我是编程新手,所以我不敢问这个问题。然而,到目前为止,我在浏览这个页面时找不到答案

我用BeautifulSoup摘录了一份德国报纸的段落。它工作得很好,但是当我将
.string
命令添加到包含段落(包括标记)的变量中时,有些段落似乎消失了/显示为“None”

这是我的代码:

import requests
from bs4 import BeautifulSoup

url = "https://www.zeit.de/wirtschaft/2020-05/konsumstimmung-handel-modebranche-einkaufen-corona"
r = requests.get(url)
r_html = r.text

soup = BeautifulSoup(r_html, features="html.parser")
para = soup.find_all('p', 'paragraph article__item')

for each in para:
    print(each.string)

link_1 = soup.find('a', 'article-pagination__link').get('href')


#next page

url_1 = link_1
r = requests.get(url_1)
r_html = r.text

soup = BeautifulSoup(r_html, features="html.parser")
for paragraph in soup.find_all('p', 'article__item'):
    print(paragraph.string) 
最后一行很重要:
print(段落.string)

所以基本上:没有
.string
一切都很好,我得到了每个段落的输出。使用
.string
命令,某些段落会被吞没并输出为“无”

怎么了


提前谢谢

尝试使用
.text
而不是
.string
。它们之间有细微的区别-这就是
.string
所做的:

如果此元素有一个字符串子元素,则返回值为 一串如果此元素有一个子标记,则返回值为 子标记的“string”属性,递归。如果此元素为 本身是一个字符串,没有子项,或有多个子项,return 值为无

这就是
.text
所做的:

获取使用给定分隔符连接的所有子字符串


尝试使用
.text
而不是
.string
。它们之间有细微的区别-这就是
.string
所做的:

如果此元素有一个字符串子元素,则返回值为 一串如果此元素有一个子标记,则返回值为 子标记的“string”属性,递归。如果此元素为 本身是一个字符串,没有子项,或有多个子项,return 值为无

这就是
.text
所做的:

获取使用给定分隔符连接的所有子字符串


在您的页面上,如果您查看string返回None的段落,您将看到它们有一个嵌入的链接或span元素,而text将返回连接的段落文本。感谢您的快速回答!下一次,如果其中一个命令有问题,我将查找这些命令。带“.string”的段落与不带“.string”的段落之间的区别仅仅是
,它被视为“我想是孩子。在您的页面上,如果您查看字符串不返回任何内容的段落,您会发现它们有一个嵌入的链接或span元素,而text将返回连接的段落文本。谢谢您的快速回答!下一次,如果其中一个命令有问题,我将查找这些命令。带“.string”的段落与不带“.string”的段落之间的区别仅仅是
,我想这算是一个“孩子”。