Веб-парсинг, скрипт возвращает ошибку AttributeError: "NoneType" - PullRequest
0 голосов
/ 05 мая 2020

Привет, сообщество StackOverFlow!

Я пытаюсь создать код для очистки финансовых данных с веб-сайтов и регистрации их в файлах Excel. Для этого мне нужно сначала научиться парсить, и я использую учебник FreeCodeCamp по парсингу.

Проблема, которую я получаю, связана с ошибкой NoneType.

Вот мой код:

# import libraries
import urllib2
from bs4 import BeautifulSoup

# specify the URL
quote_page = "https://www.bloomberg.com/quote/RY:CN"

# query the website and return the html to the variable "page"
page = urllib2.urlopen(quote_page)

# parse html using beautiful soup and store in variable "soup"
soup = BeautifulSoup(page, "html.parser")

# take out the <div> of name and get its value
name_box = soup.find("h1", attrs={"class": "companyName_99a4824b"})

# strip is used to remove starting and trailing
name = name_box.text.strip() 
print name

Отображается следующая ошибка:

Traceback (most recent call last):
  File "rbc.py", line 15, in <module>
    name_box = soup.find("h1", attrs={"class": "companyName_99a4824b"}).text
AttributeError: 'NoneType' object has no attribute 'text'

Я считаю, что проблема в том, что код python не может найти «companyName_99a4824b» при открытии ссылки, но я подтвердил, что «companyName_99a4824b» - это имя связанной переменной в сценарии HTML.

Заранее спасибо за вашу помощь!

PS «companyName_99a4824b» - это уникальное имя, связанное с названием компании, которое можно найти при просмотре страницы. Ссылка на страницу: https://www.bloomberg.com/quote/RY: CN .

...