首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python ()函数在使用.strip (BeautifulSoup)时给出变量错误

Python ()函数在使用.strip (BeautifulSoup)时给出变量错误
EN

Stack Overflow用户
提问于 2020-07-27 21:29:36
回答 2查看 71关注 0票数 0

这段代码从amazon抓取产品名称。我想去掉这个变量,它包含HTML的空格,

代码语言:javascript
复制
span = soup.find("span", id="productTitle")
print(span.strip())

但它给了我这个错误;

代码语言:javascript
复制
Traceback (most recent call last):
  File "C:/Users/avensis/Desktop/Projects/AmazonScraper/Scraper.py", line 17, in <module>
    print(span.strip())
TypeError: 'NoneType' object is not callable

我不明白为什么会这样。有人能解释一下吗?下面是我的完整代码:

代码语言:javascript
复制
from bs4 import BeautifulSoup
import requests
import html5lib

url = 'https://www.amazon.co.uk/Pingu-PING2573-Mug/dp/B0764468MD/ref=sr_1_11?dchild=1&keywords=pingu&qid=1595849018' \
      '&sr=8-11 '
headers = {
    "User-Agent": 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) '
                  'Chrome/84.0.4147.89 Safari/537.36'}
page = requests.get(url, headers=headers)
soup = BeautifulSoup(page.content, 'html5lib')
span = soup.find("span", id="productTitle")
print(span.strip())
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-07-27 21:35:42

我猜这就是你想要做的:

代码语言:javascript
复制
from bs4 import BeautifulSoup
import requests
import html5lib
import random

url = 'https://www.amazon.co.uk/Pingu-PING2573-Mug/dp/B0764468MD/ref=sr_1_11?dchild=1&keywords=pingu&qid=1595849018' \
      '&sr=8-11 '
headers = {
    "User-Agent": 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) '
                  'Chrome/84.0.4147.89 Safari/537.36'}
page = requests.get(url, headers=headers)
soup = BeautifulSoup(page.content, 'html5lib')


span = soup.find("span", id="productTitle")

print(span.get_text(strip=True))

打印:

代码语言:javascript
复制
Pingu - Mug | 300 ml | Ceramic | Gift Box | 11 x 8.5 x 8.5 cm

如果这就是你要找的,那就是你错过的.get_text(strip=True)

票数 1
EN

Stack Overflow用户

发布于 2020-07-27 21:33:26

使用.get_text()方法:

代码语言:javascript
复制
span.get_text().replace("\n", "")

'Pingu - Mug | 300 ml | Ceramic | Gift Box | 11 x 8.5 x 8.5 cm'
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63116410

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档