Exporting list with dictionary to Excel - Printable Version +- Python Forum (https://python-forum.io) +-- Forum: Python Coding (https://python-forum.io/forum-7.html) +--- Forum: General Coding Help (https://python-forum.io/forum-8.html) +--- Thread: Exporting list with dictionary to Excel (/thread-21797.html) |
Exporting list with dictionary to Excel - veromi22 - Oct-15-2019 Hi. I'm just started with Python and trying to practicing. I parse a website and creating a list with dictionaries and it works well, then I trying to export it and getting errors Full code import requests from bs4 import BeautifulSoup as bs import xlwt headers = {'accept': '*/*', 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.2 Safari/605.1.15' } base_url = 'https://hh.ru/search/vacancy?search_period=3&area=1&text=python&page=0' def hh_parse(base_url, headers): jobs = [] session = requests.Session() request = session.get(base_url, headers=headers) if request.status_code == 200: soup = bs(request.content, 'html.parser') divs = soup.find_all('div', attrs={'data-qa': 'vacancy-serp__vacancy'}) for div in divs: title = div.find('a', attrs ={'data-qa': 'vacancy-serp__vacancy-title'}).text href = div.find('a', attrs={'data-qa': 'vacancy-serp__vacancy-title'})['href'] company = div.find('a', attrs={'data-qa': 'vacancy-serp__vacancy-employer'}).text text1 = div.find('div', attrs ={'data-qa': 'vacancy-serp__vacancy_snippet_responsibility'}).text text2 = div.find('div', attrs={'data-qa': 'vacancy-serp__vacancy_snippet_requirement'}).text content = text1 + ' ' + text2 jobs.append({ 'title': title, 'href': href, 'company': company, 'content': content }) print(len(jobs)) wb = xlwt.Workbook() ws = wb.add_sheet("Export") for i in jobs: next_string = 0 + 1 ws.write(next_string, 1, i['title']) ws.write(next_string, 2, i['href']) ws.write(next_string, 3, i['company']) ws.write(next_string, 4, i['content']) wb.save("Export.xls") else: print('ERROR') hh_parse(base_url, headers) Answer
Fixed myself |