[Py2.7] Парсинг сайта с экспортом конкретной таблицы в Excel-файл - Python
Формулировка задачи:
Здравствуйте.
В университете мне дали 2 задания по парсингу: сайта и документа Word.
Про парсинг сайта на Python я смотрела видео на Youtube. Конечно, автор работал в третьей версии. Я наклепала код на Python 2.7 (с которым мы работали на парах), который по моему мнению, должен был работать, но он не хочет))
Задача состоит в том, чтобы
извлечь данные из таблицы на сайте (курсы валют с указанием валюты и самого курса) и записать их в таблицу Excel
В видео автор показал, как сделать экспорт в csv файл. Но потом мне нужно проводить расчеты с курсами валют, поэтому нужен Excel. Изначально писала в Sublime Text3, не запустился. Открыла в файл в обычном блокноте без наворотов, компилятор прицепился к строке, взятой в " ". Фактически проверить, как работает программа не могу. Прошу Вашей помощи.Код:
Листинг программы
- import csv
- import urllib.request
- from bs4 import BeautifulSoup
- base_url="http://www.cbpmr.net/"
- def get_html(url):
- response=urllib.request.urlopen(url)
- return response.read()
- def parse(html):
- soup=BeautifulSoup(html) # Применение модуля для структурирования кода HTML
- table=soup.find('table', class_='simple-little-table') #нахождение таблицы с курсами валют
- projects=[]
- for row in table.find_all('tr'): #поиск тегов, отвечающих за курсы валют
- cols=row.find_all('td')
- projects.append({"Valuta":cols[1].h12.text,"course":cols[2].text}) # создание словаря
- return projects
- def save(projects,path):
- with open(path,"w") as csvfile:
- writer=csv.writer(csvfile)
- writer.writerow("Exchange", "Course")
- for project in projects:
- writer.writerow(project["exchange"],project["course"])
- def main():
- parse (get_html(base_url))
- save(projects,"projects.csv")
- if __name__='__name__':
- main()
Ошибка:
File "C:\Python27\parsing.py", line 45 if __name__='__name__': ^ IndentationError: unexpected indent [Finished in 0.1s with exit code 1] [cmd: ['C:\\Python27\\python.exe', '-u', 'C:\\Python27\\parsing.py']] [dir: C:\Python27] [path: C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\Skype\Phone\;C:\Users\M_&_M\AppData\Local\Programs\Python\Python36-32;C:\Python27] И цепляется он именно к этой строке. Не знаю почему. Запускала в Sublime Text3. Если нужно, прикреплю скрин.Решение задачи: «[Py2.7] Парсинг сайта с экспортом конкретной таблицы в Excel-файл»
textual
Листинг программы
- writer.writerow(["Exchange", "Course"])
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д