@ SMth80 см. Edit2

исал некоторый код на python для анализа заголовка и ссылки с веб-страницы. Первоначально я пытался разобрать ссылки с левой боковой панели, а затем соскрести эти вышеупомянутые документы с каждой страницы, отслеживая каждую ссылку. Я сделал это без нареканий. Я пытался сохранить документы разных ссылок на разных страницах в одном файле Excel. Тем не менее, он создает несколько «листов», извлекая нужную часть в качестве имени листа из переменной заголовка из моего сценария. Проблема, с которой я сталкиваюсь, заключается в том, что при сохранении данных в моих таблицах Excel сохраняются только последние записи каждой страницы из ссылок, а не полные записи. Вот скрипт, который я пробовал:

import requests
from lxml import html
from pyexcel_ods3 import save_data

web_link = "http://www.wiseowl.co.uk/videos/"
main_url = "http://www.wiseowl.co.uk"

def get_links(page):

    response = requests.Session().get(page)
    tree = html.fromstring(response.text)
    data = {}
    titles = tree.xpath("//ul[@class='woMenuList']//li[@class='woMenuItem']/a/@href")
    for title in titles:
        if "author" not in title and "year" not in title:
            get_docs(data, main_url + title)

def get_docs(data, url):

    response = requests.Session().get(url)
    tree = html.fromstring(response.text)

    heading = tree.findtext('.//h1[@class="gamma"]')

    for item in tree.xpath("//p[@class='woVideoListDefaultSeriesTitle']"):
        title = item.findtext('.//a')
        link = item.xpath('.//a/@href')[0]
        # print(title, link)
        data.update({heading.split(" ")[-4]: [[(title)]]})
    save_data("mth.ods", data)

if __name__ == '__main__':
    get_links(web_link)

Ответы на вопрос(0)

Ваш ответ на вопрос