Я пытаюсь каталогизировать файлы на этом сайте как личное упражнение. Когда я запускаю следующий код, я не знаю, почему я не получаю первый URL-адрес файла на этом сайте. Любая помощь приветствуется.
import requests from bs4 import BeautifulSoup import regex url = 'https://www.liberliber.it/online/autori/autori-p/niccolo-paganini/24-capricci-per-violino-solo-op-1/' resp = requests.get(url) soup = BeautifulSoup(resp.text, 'lxml') files = soup.find_all(href=regex.compile("\.mp3$")) for h in files: a = h.findNext('a') #print(a.string) urls.append(a.attrs['href']) tags.append(a.string)
файлы заканчиваются смещением на один файл mp3. Почему я не получаю первый файл и не добавляю другой файл в конце?
Не думаю, что вы хотите findNext, потому что у вас есть все теги a внутри files. Так что, возможно, вы просто хотите
findNext
a
files
for h in files: urls.append(h.attrs['href']) tags.append(h.string)