Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 25, 2019 21:56:01

Yanus
От:
Зарегистрирован: 2011-08-29
Сообщения: 17
Репутация: +  0  -
Профиль   Отправить e-mail  

Помогите разобраться с примером из книги Кори Альтхоффа

Здравствуйте. Только начал изучать Python.
В книге Кори Альтхоффа есть пример парсера контента новостей с сайта Google.ru.

 import urllib.request
from bs4 import BeautifulSoup
class Scraper:
    def __init__(self, site):
        self.site = site
    def scrape(self):
        r = urllib.request\
            .urlopen(self.site)
        html = r.read()
        parser = "html.parser"
        sp = BeautifulSoup(html,
                           parser)
        for tag in sp.find_all("a"):
            url = tag.get("href")
            if url is None:
                continue
            if "html" in url:
                print("\n" + url)
news = "https://news.google.ru/"
Scraper(news).scrape()

После выполнения программа ни чего не выдает. Но если “news.google.ru” поменять на “news.yandex.ru” то все работает. Помогите разобраться в чем проблема. Спасибо.



Офлайн

#2 Янв. 26, 2019 00:40:35

VadimK
Зарегистрирован: 2013-07-03
Сообщения: 199
Репутация: +  16  -
Профиль   Отправить e-mail  

Помогите разобраться с примером из книги Кори Альтхоффа

 html = r.read()
print(html)
и посмотреть что вообще попадает со страницы в данные.

Офлайн

#3 Янв. 26, 2019 06:49:13

Yanus
От:
Зарегистрирован: 2011-08-29
Сообщения: 17
Репутация: +  0  -
Профиль   Отправить e-mail  

Помогите разобраться с примером из книги Кори Альтхоффа

Спасибо, за ответ. Сделал как Вы посоветовали. В результате вывод более 3000 строк. У меня подозрение, что на гугле нет искомых строк, все выполнено по другой технологии. Но это мнение новичка.



Офлайн

#4 Янв. 26, 2019 10:29:57

uf4JaiD5
Зарегистрирован: 2018-12-28
Сообщения: 76
Репутация: +  4  -
Профиль   Отправить e-mail  

Помогите разобраться с примером из книги Кори Альтхоффа

Yanus
В результате вывод более 3000 строк.
Можно открыть "https://news.google.ru/" в браузере и там посмотреть код страницы. Удобнее листать будет.

Yanus
У меня подозрение, что на гугле нет искомых строк
Да, там всё в javascript завёрнуто, нормального html нет. Видимо, когда писали книгу, страница выглядела иначе.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version