Перебор по Excel, карта сайта с Python - PullRequest
0 голосов
/ 27 мая 2019

У меня есть карта сайта, сохраненная в Excel. Я хочу перебрать каждую ссылку и записать текст сайта в текстовый файл. Зацикленная часть, пишущая текстовое содержимое, работает, но вместо того, чтобы вставлять каждую страницу вручную, я хотел бы составить формулу для перехода по листу

Существует только столбец A, и у A1 есть один URL, у A2 следующий URL и т. Д.

Я работаю в Spyder и Anaconda, и, очевидно, я новичок в этом. Несмотря на загрузочные лагеря, это может быть первый проект, который я могу использовать на работе. Я объединил различные упражнения онлайн, чтобы выучить правильный синтаксис

import urllib.request
from inscriptis import get_text
import openpyxl
from openpyxl.utils import cell as cellutils
workbook = 
openpyxl.load_workbook"C:\Users\Gittel\Desktop\sitemappages.xlsx"
worksheet = workbook.active
for cell in worksheet.col[1]:
    url = cell.value
    html = urllib.request.urlopen(url).read().decode('utf-8')
    text = get_text(html)
    file=open("(url).txt","w")
    file.write(text)
    file.close()

Сообщения об ошибках содержат неверный синтаксис для идентификации файла Excel. Я не уверен, что я также правильно настраиваю итерацию. Я хочу, чтобы ячейка добавляла 1 (или переходила к следующей строке) для каждой итерации, но я не знаю, как это сделать.

1 Ответ

0 голосов
/ 27 мая 2019

Вам не хватает скобки для load_workbook. Попробуйте ниже:

workbook = openpyxl.load_workbook(r"C:\Users\Gittel\Desktop\sitemappages.xlsx")
worksheet = workbook.active

for cell in worksheet.iter_rows(values_only=True):
    url = cell[0]
    print(url)

Кроме того, если вы используете Excel только для хранения строк, я бы рекомендовал использовать простой текстовый файл.

...