Я пытаюсь создать веб-искатель с помощью beautifulsoup и urllib. Искатель работает, но он не открывает все страницы сайта. Он открывает первую ссылку и переходит к этой ссылке, открывает первое соединение этой страницы и так далее. Вот мой код:Веб-искатель не открывает все ссылки на странице
from bs4 import BeautifulSoup
from urllib.request import urlopen
from urllib.parse import urljoin
import json, sys
sys.setrecursionlimit(10000)
url = input('enter url ')
d = {}
d_2 = {}
l = []
url_base = url
count = 0
def f(url):
global count
global url_base
if count <= 100:
print("count: " + str(count))
print('now looking into: '+url+'\n')
count += 1
l.append(url)
html = urlopen(url).read()
soup = BeautifulSoup(html, "html.parser")
d[count] = soup
tags = soup('a')
for tag in tags:
meow = tag.get('href',None)
if (urljoin(url, meow) in l):
print("Skipping this one: " + urljoin(url,meow))
elif "mailto" in urljoin(url,meow):
print("Skipping this one with a mailer")
elif meow == None:
print("skipping 'None'")
elif meow.startswith('http') == False:
f(urljoin(url, meow))
else:
f(meow)
else:
return
f(url)
print('\n\n\n\n\n')
print('Scrapping Completed')
print('\n\n\n\n\n')
Я думаю, что здесь было бы более уместно: http://codereview.stackexchange.com/ – Nicarus
, если вы не используете какое-либо правило для его контроля, оно никогда не остановится. – furas