Форум сайта python.su
0
На 22 строке выдает ошибку о том, что search не имеет типа. Как это понять и исправить. Помогите пожалуйста.
import requests from bs4 import BeautifulSoup import csv def get_html(url): request = requests.get(url) return request.text #СОздание документа def make_files(base): with open('D:/python/vk_parcer.csv', 'a', encoding = 'utf-8') as file: writer = csv.writer(file) writer.writerow( ( base['name'], base['school'], base['massege'] )) #Сам парсинг def parse (html): soup = BeautifulSoup(html, 'lxml') search = soup.find('div', id = 'list_content') #Здесь сама ошибка. result = search.find_all('div', class_ = 'friends_list_bl').find_all('div', class_ = 'friends_user_row clear_fix') for i in result: try: name = i.find_all('div', class_ = 'friends_user_info').find('div', class_ = 'friends_field friends_field_title').find('a').text except: name = '' try: school = i.find_all('div', class_ = 'friends_user_info').find('div', class_ = 'friends_field').text except: school = '' try: massege = i.find_all('div', class_ = 'friends_user_info').find('a').get('href') except: massege = '' base = { 'name':name, 'school':school, 'massege':massege } make_files(base) def main(): URL = 'https://vk.com/friends' html = get_html(URL) parse(html) if __name__ == '__main__': main()
Отредактировано ELVYY (Март 1, 2017 18:54:39)
Прикреплённый файлы:
Снимок.PNG (29,9 KБ)
Офлайн
2
Нет типа значит, что там нет данных, которые вы ожидаете увидеть. Нет тех элементов на странице, которые вы запрашиваете.
Офлайн
35
А насколько важен именно парсинг HTML, можно попробовать использовать VK API, чтобы получать данные. Есть даже для этого удобная библиотека.
Офлайн
0
wi34rd
Это я сам понимаю. А как это исправить можно?
Офлайн
2
ELVYY
wi34rdЭто я сам понимаю. А как это исправить можно?
Офлайн