Используйте urllib для чтения HTML из файлов данных ниже, извлечения href = vaues из тегов привязки, сканирования тега, который находится в определенной позиции относительно имени в списке, перейдите по этой ссылке и повторитеобработайте несколько раз и сообщите фамилию, которую вы найдете.
Это HTML-ссылка для данных http://py4e -data.dr-chuck.net / known_by_Caragh.html
Поэтому мне нужно найти ссылку в позиции 18 (первое имя 1).Перейдите по этой ссылке.Повторите этот процесс 7 раз.Ответ - фамилия, которую вы получите.
- Может ли кто-нибудь построчно объяснить мне, как работают эти 2 цикла («Пока» и «для»).
- Итак, когда я вхожу в Позити 18, он извлекает 18-ю строку тега href, а затем в следующую 18-ю, так 7 раз?Потому что даже если я введу другой номер, я все равно получу тот же ответ.Заранее большое спасибо.
Код:
import urllib.request, urllib.parse, urllib.error
from bs4 import BeautifulSoup
import ssl
n = 0
count = 0
url = input("Enter URL:")
numbers = input("Enter count:")
position = input("Enter position:")
while n < 7:
html = urllib.request.urlopen(url).read()
soup = BeautifulSoup(html, 'html.parser')
tags = soup('a')
for tag in tags:
count = count + 1
if count == 18:
url = tag.get('href', None)
print("Retrieving:" , url)
count = 0
break
n = n + 1