[英]How to extract all the url's from a website?
我正在用Python編寫程序,以從給定的網站提取所有網址。 來自網站而不是頁面的所有URL。 我想我不是第一個想要這樣做的人,我想知道是否有現成的解決方案,還是我必須自己編寫代碼。
首先,您必須使用urlib或request之類的包下載頁面的HTML內容。
之后,您可以使用Beautiful Soup提取URL。 實際上, 他們的教程顯示了如何提取<a>
元素中包含的所有鏈接作為一個特定示例:
for link in soup.find_all('a'):
print(link.get('href'))
# http://example.com/elsie
# http://example.com/lacie
# http://example.com/tillie
如果您還想查找未包含在<a>
元素中的鏈接,則可能必須自己編寫一些更復雜的內容。
編輯:我也剛遇到了專門為此任務創建的兩個Scrapy鏈接提取器類:
我沒有看到任何現成的腳本可以在快速的Google搜索中做到這一點。
使用scrapy
框架使此操作變得微不足道。
耗時的部分將是學習如何使用scrapy。 這些教程雖然很棒,但不會花那么長時間。
http://doc.scrapy.org/en/latest/intro/tutorial.html
創建其他人可以使用的解決方案是成為編程社區成員的樂趣之一。 如果刮板不存在,則可以創建一個刮板,每個人都可以使用刮板來獲取網站的所有鏈接!
給出的答案是我建議的(+1)。
但是,如果您真的想快速簡單地執行某項操作,並且您正在使用* NIX平台,請嘗試以下操作:
lynx -dump YOUR_URL | grep http
其中YOUR_URL是您要檢查的URL。 這應該會為您提供所有想要的鏈接(未完全編寫的鏈接除外)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.