38

Ищем отзывы с "drom.ru" об авто

И так, люблю читать информацию о своем авто и тут наткнулся на мысль что было бы круто сделать для себя книгу со всеми собранными отзывами, большее количество отзывов находятся на drom и было принято решение брать данные оттуда. Библиотека будет использоваться bs4 для python, а также docx так как я хочу сделать себе чтиво в виде книги ))


https://github.com/tagunzet/drom_obzor


from bs4 import BeautifulSoup

import urllib.request

import docx


Импортирую библиотеки, а далее указываю ссылку от куда будем брать данные:

а далее

resp = urllib.request.urlopen("http://www.drom.ru/reviews/toyota/vitz/")

указываем ссылку (у меня это раздел Тойота марка VITZ )


soup = BeautifulSoup(resp)

(Указываем экземпляр объекта)

Cоздаю два массива один будет содержать список ссылок, а второй информацию, которую мы достали по этой ссылке

linkmass = []

tmpmass = []

Получение ссылок

Тут мы заходим на сайт и парсим все ссылки, которые есть на нем.

for link in soup.find_all('a', href=True):

if 'page' in link['href']:

#print(link['href'])

getlink(link['href'])

И передаём список ссылок в функцию getlink где мы уже будем обрабатывать эти ссылки.

def getlink(page): Функция обработки ссылок, как известно ссылок на странице будет много и половину этих ссылок мусор

resp = urllib.request.urlopen(page)

soup = BeautifulSoup(resp)

for link in soup.find_all('a', href=True): смотрим все тэги a href

if len(link['href']) == 46: если длинна ссылки строки == 46, а именно ссылки с номерами авто равны 45 символам мы добавляем в словарь

#print(link['href'])

linkmass.append(link['href']) добавляем в словарь ссылок

а теперь получаем информацию по ссылке :

doc = docx.Document() объявляем экземпляр объекта

doc.add_paragraph('Отзывы о Toyota Vitz') пишем заголовок для нашей книги

def getinfo(): функция получения информации

for linkofinfo in linkmass: берем ссылки из словаря по одной

resp = urllib.request.urlopen(linkofinfo) и начинаем читать страницу

soup = BeautifulSoup(resp)

soup.prettify() -- функция делает внешний вид лучше ( нашел о оф документации )

for name in soup.find_all("div", {"class": "b-fix-wordwrap"}): теперь ищем класс в котором содержится отзыв об авто.

tmps = (str(name.get_text().strip())) добавляем во временную переменную

print('append') - что-нибудь чирканём в консоль что бы видеть статус добавления

par1 = doc.add_paragraph('Итак:  ') - добавляем параграф

par1.add_run(tmps) - добавляем текст в параграф

Конец кода

getinfo() - - не забываем вызвать функцию getinfo ( я это сделал в самом низу )

doc.save('helloworld.docx') -- обязательно сохраняем наш результат в docx файл !

У меня вышло 342 страницы интересного чтива !!))

Может кому-то пригодится!|


link to git : https://github.com/tagunzet/drom_obzor

Правила сообщества

Публиковать могут пользователи с любым рейтингом. Однако!


Приветствуется:

• уважение к читателям и авторам

• конструктивность комментариев

• простота и информативность повествования

• тег python2 или python3, если актуально

• код публиковать в виде цитаты, либо ссылкой на специализированный сайт


Не рекомендуется:

• допускать оскорбления и провокации

• распространять вредоносное ПО

• просить решить вашу полноценную задачу за вас

• нарушать правила Пикабу

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества