入力されたURLからリンクを削り取ろうとしていますが、1つのURL()でしか動作しません。入力されたURLからどのように掻き集めることができますか?私はBeautifulSoupを使用していますが、これに適したScrapyですか?ScrapyまたはBeautifulSoup複数のウェブサイトからのリンクとテキストを掻き集める
def WebScrape():
linktoenter = input('Where do you want to scrape from today?: ')
url = linktoenter
html = urllib.request.urlopen(url).read()
soup = BeautifulSoup(html, "lxml")
if linktoenter in url:
print('Retrieving your links...')
links = {}
n = 0
link_title=soup.findAll('a',{'class':'title'})
n += 1
links[n] = link_title
for eachtitle in link_title:
print(eachtitle['href']+","+eachtitle.string)
else:
print('Please enter another Website...')
あなたはそれだけで1つのURLのために働く何を意味していますか?あなたが別のものを与えるとどうなりますか?エラーまたは予期しない結果がありますか?あなたが試した他のURLは何でしたか? –
あなたがアクセスしようとしているすべてのリンクについて、そのサイトが 'class =" title "'を持っているようですが、これはあなたのコードが依存しているものです。 –
@ TadhgMcDonald-Jensen他のページには、すべてのを辞書に入れてlink_title = soup.findAll(新しい辞書)、それはURLがクラスをリストしているものを – pdel5