本篇內(nèi)容主要講解“如何使用Python制作網(wǎng)絡(luò)爬蟲”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學(xué)習(xí)“如何使用Python制作網(wǎng)絡(luò)爬蟲”吧!
我們一直強調(diào)網(wǎng)站設(shè)計、成都網(wǎng)站制作對于企業(yè)的重要性,如果您也覺得重要,那么就需要我們慎重對待,選擇一個安全靠譜的網(wǎng)站建設(shè)公司,企業(yè)網(wǎng)站我們建議是要么不做,要么就做好,讓網(wǎng)站能真正成為企業(yè)發(fā)展過程中的有力推手。專業(yè)網(wǎng)站設(shè)計公司不一定是大公司,成都創(chuàng)新互聯(lián)作為專業(yè)的網(wǎng)絡(luò)公司選擇我們就是放心。
簡單的制作爬蟲的方法:獲取“website_links”列表中網(wǎng)站的 html 代碼,并通過搜索第一個 標(biāo)簽來獲取其標(biāo)題。這樣我們就得到了一個網(wǎng)站的主要文章的標(biāo)題(標(biāo)題)。
網(wǎng)絡(luò)爬蟲是一種史詩般的小型軟件,您可以在短時間內(nèi)構(gòu)建。采用以上方法實時檢測互聯(lián)網(wǎng)上的突發(fā)新聞就非常簡單。下面是代碼示例。
import requests from bs4 import BeautifulSoup website_links = ["https://www.aljazeera.com/", "https://www.thehindu.com/", "https://www.ndtv.com/"] consolidatedTitleString = "" for i, website in enumerate(website_links): page = requests.get(website) soup = BeautifulSoup(page.text, 'html.parser') #to get the headings and display title = soup.find('h2').get_text() consolidatedTitleString += "\n\n" + str(i) + ") "+ title.strip("\n")
通過這種方法就可以獲取到網(wǎng)站的標(biāo)題,這里使用 5 個主要的 Python 包:scrapy、BeautifulSoup、requests、urllib 和 re。最后一個是 're' 或正則表達(dá)式庫非常有用。在 html 代碼中,我們有以下用處
Indonesia quake, tsunami toll tops 800
為了使任何有用的東西,我們需要刪除 html 標(biāo)簽并只獲取文本,這通常在使用湯庫時使用“.get_text()”函數(shù)完成。但是,了解如何使用正則表達(dá)式執(zhí)行此操作很有用。
下面的代碼有助于從推文中提取鏈接列表,而不是上面給出的新聞報紙網(wǎng)站鏈接。我們利用模式“htttps”來檢測使用 re 庫的鏈接。
for i,status in enumerate(tweepy.Cursor(api.home_timeline).items(7)): try: listOfLinks.append(re.search("(?Phttps?://[^\s]+)", status.text).group("url")) except AttributeError: print("A link does not exist")
還可以制作一個“ImageCrawler”來下載網(wǎng)頁上的所有圖像。
r = requests.get("http://pythonforengineers.com/pythonforengineersbook/") data = r.text soup = BeautifulSoup(data, "lxml") for link in soup.find_all('img'): image = link.get("src") image = "http:" + image question_mark = image.find("?") image = image[:question_mark] image_name = os.path.split(image)[1] print(image_name) r2 = requests.get(image) with open(image_name, "wb") as f: f.write(r2.content)
到此,相信大家對“如何使用Python制作網(wǎng)絡(luò)爬蟲”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!