亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Python > 正文

python通過鏈接抓取網站詳解

2020-02-15 21:29:53
字體:
來源:轉載
供稿:網友

在本篇文章里,你將會學習把這些基本方法融合到一個更靈活的網站 爬蟲中,該爬蟲可以跟蹤任意遵循特定 URL 模式的鏈接。

這種爬蟲非常適用于從一個網站抓取所有數據的項目,而不適用于從特 定搜索結果或頁面列表抓取數據的項目。它還非常適用于網站頁面組織 得很糟糕或者非常分散的情況。

這些類型的爬蟲并不需要像上一節通過搜索頁面進行抓取中采用的定位 鏈接的結構化方法,因此在 Website 對象中不需要包含描述搜索頁面 的屬性。但是由于爬蟲并不知道待尋找的鏈接的位置,所以你需要一些 規則來告訴它選擇哪種頁面。你可以用 targetPattern(目標 URL 的 正則表達式)和布爾變量 absoluteUrl 來達成這一目標:

class Website:  def __init__(self, name, url, targetPattern, absoluteUrl,    titleTag, bodyTag):    self.name = name    self.url = url    self.targetPattern = targetPattern    self.absoluteUrl=absoluteUrl    self.titleTag = titleTag    self.bodyTag = bodyTagclass Content:  def __init__(self, url, title, body):    self.url = url    self.title = title    self.body = bodydef print(self):    print("URL: {}".format(self.url))    print("TITLE: {}".format(self.title))    print("BODY:/n{}".format(self.body))

Content 類和第一個爬蟲例子中使用的是一樣的。

Crawler 類從每個網站的主頁開始,定位內鏈,并解析在每個內鏈頁面 發現的內容:

import reclass Crawler:  def __init__(self, site):    self.site = site    self.visited = []def getPage(self, url):    try:req = requests.get(url)    except requests.exceptions.RequestException:      return Nonereturn BeautifulSoup(req.text, 'html.parser')def safeGet(self, pageObj, selector):selectedElems = pageObj.select(selector)if selectedElems is not None and len(selectedElems) > 0:return '/n'.join([elem.get_text() forelem in selectedElems])return ''def parse(self, url):bs = self.getPage(url)if bs is not None:title = self.safeGet(bs, self.site.titleTag)body = self.safeGet(bs, self.site.bodyTag)if title != '' and body != '':content = Content(url, title, body)content.print()def crawl(self):"""獲取網站主頁的頁面鏈接"""bs = self.getPage(self.site.url)targetPages = bs.findAll('a',href=re.compile(self.site.targetPattern))for targetPage in targetPages:targetPage = targetPage.attrs['href']if targetPage not in self.visited:self.visited.append(targetPage)if not self.site.absoluteUrl:targetPage = '{}{}'.format(self.site.url, targetPage)self.parse(targetPage)reuters = Website('Reuters', 'https://www.reuters.com', '^(/article/)', False,'h1', 'div.StandardArticleBody_body_1gnLA') crawler = Crawler(reuters) crawler.crawl()

與前面的例子相比,這里的另外一個變化是:Website 對象(在這個例 子中是變量 reuters)是 Crawler 對象本身的一個屬性。這樣做的作 用是將已訪問過的頁面存儲在爬蟲中,但是也意味著必須針對每個網站 實例化一個新的爬蟲,而不是重用一個爬蟲去抓取網站列表。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久色在线播放| 欧美天天综合色影久久精品| 91在线观看免费高清完整版在线观看| 爽爽爽爽爽爽爽成人免费观看| 精品久久久久久久久久久久久| 欧美精品激情在线观看| 九九视频直播综合网| 精品久久久久久久久久久久| 日韩在线观看免费高清完整版| 国产精品久久久久77777| 欧美中文字幕在线视频| 日本欧美国产在线| 久久久久北条麻妃免费看| 69久久夜色精品国产69乱青草| 久久国内精品一国内精品| 久久久www成人免费精品| 欧美日韩亚洲高清| 性夜试看影院91社区| 亚洲电影成人av99爱色| 国产视频欧美视频| 午夜精品理论片| 国产99视频在线观看| 国产精品久久婷婷六月丁香| 91国内免费在线视频| 亚洲性夜色噜噜噜7777| 亚洲欧美日韩中文视频| 九九热这里只有在线精品视| 亚洲一区二区三区成人在线视频精品| 91精品国产综合久久久久久蜜臀| 亚洲精品国精品久久99热一| 国产精品美女午夜av| 欧美精品国产精品日韩精品| 中文字幕精品av| 亚洲国产黄色片| 亚洲欧美制服第一页| 欧美日韩在线视频一区| 亚洲综合日韩中文字幕v在线| 国产欧美日韩精品在线观看| 国产精品尤物福利片在线观看| 国产亚洲精品久久久久久牛牛| 日本精品免费观看| 欧美日韩成人在线观看| 国产伦精品免费视频| 狠狠躁夜夜躁人人爽天天天天97| 欧美激情视频一区二区三区不卡| 欧美一级淫片aaaaaaa视频| 91chinesevideo永久地址| 亚洲视频在线观看| 欧美性xxxx极品高清hd直播| 欧美老女人性生活| 久久精品视频99| 国产视频精品久久久| 亚洲成人激情视频| 欧美大尺度在线观看| 国产成人免费91av在线| 亚洲欧洲日产国码av系列天堂| 亚洲综合视频1区| 精品福利樱桃av导航| 日本a级片电影一区二区| 国产精品电影在线观看| 国产精品激情av电影在线观看| 日韩一区二区av| 亚洲第一偷拍网| 久久久www成人免费精品张筱雨| 日韩美女福利视频| 欧美有码在线观看视频| 欧美在线视频网| 久久天天躁狠狠躁夜夜av| 亚洲激情视频在线观看| 在线播放国产一区中文字幕剧情欧美| 欧美日韩视频免费播放| 久久精品国产一区二区电影| 中文字幕亚洲无线码在线一区| 亚洲精品av在线播放| 92版电视剧仙鹤神针在线观看| 欧美激情乱人伦一区| 国产精品久久久久7777婷婷| 日韩精品亚洲视频| 国产一区二中文字幕在线看| 日韩视频在线免费观看| 日韩在线中文视频| 国产精品免费电影| 欧美精品激情视频| 午夜精品久久久久久久99热| 亚洲国产精品女人久久久| 精品国产乱码久久久久久虫虫漫画| 国产成人精品a视频一区www| 欧美午夜影院在线视频| 国产精品久久久久9999| 456亚洲影院| 日韩在线观看免费高清完整版| 欧美激情va永久在线播放| 亚洲黄在线观看| 日本不卡视频在线播放| 自拍偷拍亚洲欧美| 国产精品天天狠天天看| 欧美日韩视频免费播放| 在线国产精品播放| 国产丝袜一区二区| 国产欧美精品一区二区三区-老狼| 在线视频欧美性高潮| 成人h视频在线观看播放| 精品久久久香蕉免费精品视频| 久色乳综合思思在线视频| 欧美极度另类性三渗透| 日韩国产精品亚洲а∨天堂免| 亚洲精品之草原avav久久| 成人免费在线视频网址| 青青久久av北条麻妃黑人| 热99精品里视频精品| 国产成人综合精品在线| 精品久久久久久亚洲精品| 国产一区红桃视频| 91精品视频免费观看| 欧美电影免费看| …久久精品99久久香蕉国产| 欧美性xxxxx极品娇小| 在线观看免费高清视频97| 亚洲一区亚洲二区亚洲三区| 国产欧美精品va在线观看| 亚洲第一精品自拍| 成人网址在线观看| 7777精品久久久久久| 亚洲精品电影在线| 日韩免费av片在线观看| 国产精品嫩草影院一区二区| 欧美成人手机在线| 日韩欧美精品网站| 日韩精品视频免费| 97精品国产91久久久久久| 亚洲欧美日韩国产中文专区| 69av视频在线播放| 欧美在线欧美在线| 成人有码在线视频| 精品国偷自产在线视频| 日韩女在线观看| 九九精品视频在线| 亚洲高清av在线| 日韩中文字幕网| 久久精品久久久久久国产 免费| 欧美日韩另类字幕中文| 欧美性猛交xxxx乱大交蜜桃| 国产精品久久久久av免费| 亚洲成人久久电影| 久久国产精品偷| 国产丝袜一区二区| 久久人体大胆视频| 亚洲美女久久久| 黑人精品xxx一区| 国内成人精品视频| 亚洲性av在线| 亚洲国产精久久久久久| 亚洲欧美在线一区| 欧美日韩一二三四五区| 欧美精品日韩www.p站| 2021久久精品国产99国产精品| 中文字幕欧美精品在线| xvideos成人免费中文版| 一区二区三区四区视频| 欧美日韩国产二区| 久久久久久亚洲精品中文字幕| 美日韩精品视频免费看| 中文字幕免费精品一区高清| 亚洲天堂av高清|