校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > 一個入門級python爬蟲教程詳解

一個入門級python爬蟲教程詳解

熱門標簽:地圖標注可以遠程操作嗎 智能電話機器人調研 江門智能電話機器人 如何申請400電話代理 天津塘沽區地圖標注 滴滴地圖標注公司 甘肅高頻外呼系統 400電話在線如何申請 杭州房產地圖標注

前言

本文目的:根據本人的習慣與理解,用最簡潔的表述,介紹爬蟲的定義、組成部分、爬取流程,并講解示例代碼。

基礎

爬蟲的定義:定向抓取互聯網內容(大部分為網頁)、并進行自動化數據處理的程序。主要用于對松散的海量信息進行收集和結構化處理,為數據分析和挖掘提供原材料。

今日t條就是一只巨大的“爬蟲”。

爬蟲由URL庫、采集器、解析器組成。

流程

如果待爬取的url庫不為空,采集器會自動爬取相關內容,并將結果給到解析器,解析器提取目標內容后進行寫入文件或入庫等操作。

代碼

第一步:寫一個采集器

如下是一個比較簡單的采集器函數。需要用到requests庫。
首先,構造一個http的header,里面有瀏覽器和操作系統等信息。如果沒有這個偽造的header,可能會被目標網站的WAF等防護設備識別為機器代碼并干掉。

然后,用requests庫的get方法獲取url內容。如果http響應代碼是200 ok,說明頁面訪問正常,將該函數返回值設置為文本形式的html代碼內容。

如果響應代碼不是200 ok,說明頁面不能正常訪問,將函數返回值設置為特殊字符串或代碼。

import requests

def get_page(url):
	headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36'}
	response = requests.get(url, headers= headers)
	if response.status_code == 200:
	  return response.text
	else:
		return 'GET HTML ERROR !'

第二步:解析器

解析器的作用是對采集器返回的html代碼進行過濾篩選,提取需要的內容。
作為一個14年忠實用戶,當然要用豆瓣舉個栗子 _

我們計劃爬取豆瓣排名TOP250電影的8個參數:排名、電影url鏈接、電影名稱、導演、上映年份、國家、影片類型、評分。整理成字典并寫入文本文件。

待爬取的頁面如下,每個頁面包括25部電影,共計10個頁面。

在這里,必須要表揚豆瓣的前端工程師們,html標簽排版非常工整具有層次,非常便于信息提取。

下面是“肖申克的救贖”所對應的html代碼:(需要提取的8個參數用紅線標注)

根據上面的html編寫解析器函數,提取8個字段。該函數返回值是一個可迭代的序列。
我個人喜歡用re(正則表達式)提取內容。8個(.*?)分別對應需要提取的字段。

import re

def parse_page(html):
	pattern = re.compile('em class="">(.*?)/em>.*?a href="(.*?)" rel="external nofollow" rel="external nofollow" >.*?span class="title">(.*?)/span>.*?div class="bd">.*?p class="">(.*?)nbsp.*?br>(.*?)nbsp;/nbsp;(.*?)nbsp;/nbsp;(.*?)/p>.*?span class="rating_num".*?"v:average">(.*?)/span>' , re.S)
	items = re.findall(pattern , html)
	for item in items:
		yield {
		  'rank': item[0],
		  'href': item[1],
		  'name': item[2],
		  'director': item[3].strip()[4:],
		  'year': item[4].strip(),
		  'country': item[5].strip(),
		  'style': item[6].strip(),
		  'score': item[7].strip()
		}

提取后的內容如下:

整理成完整的代碼:(暫不考慮容錯)

import requests
import re
import json

def get_page(url):
	#采集器函數
	headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36'}
	response = requests.get(url, headers= headers)
	if response.status_code == 200:
	  return response.text
	else:
		return 'GET HTML ERROR ! '


def parse_page(html):
	#解析器函數
	pattern = re.compile('em class="">(.*?)/em>.*?a href="(.*?)" rel="external nofollow" rel="external nofollow" >.*?span class="title">(.*?)/span>.*?div class="bd">.*?p class="">(.*?)nbsp.*?br>(.*?)nbsp;/nbsp;(.*?)nbsp;/nbsp;(.*?)/p>.*?span class="rating_num".*?"v:average">(.*?)/span>' , re.S)
	items = re.findall(pattern , html)
	for item in items:
		yield {
		  'rank': item[0],
		  'href': item[1],
		  'name': item[2],
		  'director': item[3].strip()[4:],
		  'year': item[4].strip(),
		  'country': item[5].strip(),
		  'style': item[6].strip(),
		  'score': item[7].strip()
		}


def write_to_file(content):
	#寫入文件函數
	with open('result.txt' , 'a' , encoding = 'utf-8') as file:
		file.write(json.dumps(content , ensure_ascii = False) + '\n')


if __name__== "__main__":
	# 主程序
	for i in range(10):
		url= 'https://movie.douban.com/top250?start='+ str(i*25)+ 'filter'
		for res in parse_page(get_page(url)):
			write_to_file(res)

非常簡潔,非常符合python簡單、高效的特點。

說明:

需要掌握待爬取url的規律,才能利用for循環等操作自動化處理。
前25部影片的url是https://movie.douban.com/top250?start=0filter,第26-50部影片url是https://movie.douban.com/top250?start=25filter。規律就在start參數,將start依次設置為0、25、50、75。。。225,就能獲取所有頁面的鏈接。parse_page函數的返回值是一個可迭代序列,可以理解為字典的集合。運行完成后,會在程序同目錄生成result.txt文件。內容如下:

 

到此這篇關于一個入門級python爬蟲教程詳解的文章就介紹到這了,更多相關python爬蟲入門教程內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • python從入門到精通 windows安裝python圖文教程
  • Python面向對象思想與應用入門教程【類與對象】
  • 一小時快速入門Python教程

標簽:漢中 廊坊 河池 德宏 臨汾 重慶 東莞 長春

巨人網絡通訊聲明:本文標題《一個入門級python爬蟲教程詳解》,本文關鍵詞  一個,入門,級,python,爬蟲,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《一個入門級python爬蟲教程詳解》相關的同類信息!
  • 本頁收集關于一個入門級python爬蟲教程詳解的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    免费成人在线视频观看| 精品日产卡一卡二卡麻豆| 2020国产成人综合网| 久久精品二区亚洲w码| 日韩欧美一级二级三级久久久| 日韩在线卡一卡二| 精品电影一区二区三区| 风间由美一区二区三区在线观看 | 欧美性一区二区| 亚洲国产精品欧美一二99| 欧美色大人视频| 久久er精品视频| 久久蜜桃一区二区| 99精品视频在线播放观看| 性做久久久久久| 欧美一区二区三区公司| 亚洲激情成人在线| 欧美精品v国产精品v日韩精品| 蜜桃视频一区二区| 国产精品久久久久影院| 欧美三级三级三级爽爽爽| 蜜桃在线一区二区三区| 最新高清无码专区| 337p亚洲精品色噜噜噜| 岛国精品在线观看| 欧美bbbbb| 亚洲视频一区二区在线| 日韩视频123| 91网页版在线| 韩国v欧美v亚洲v日本v| 亚洲一区二区美女| 中文久久乱码一区二区| 91精品国产欧美日韩| 99视频精品免费视频| 9久草视频在线视频精品| 天堂精品中文字幕在线| 综合久久综合久久| 精品国产乱码久久久久久久| 91官网在线观看| 亚洲精品一区二区三区在线观看| 蜜臀av性久久久久蜜臀aⅴ流畅| 国产精品久久网站| 日韩欧美一区二区在线视频| 91丝袜美腿高跟国产极品老师| 久久国产生活片100| 亚洲欧美区自拍先锋| 久久久三级国产网站| 666欧美在线视频| 色呦呦国产精品| 粉嫩一区二区三区在线看| 麻豆免费精品视频| 日韩成人免费看| 亚洲成人你懂的| 亚洲欧美另类在线| 国产精品久久一卡二卡| 久久久午夜精品理论片中文字幕| 欧美一卡二卡三卡四卡| 欧美最新大片在线看| 成人sese在线| 北岛玲一区二区三区四区| 国产一区二区不卡| 捆绑紧缚一区二区三区视频| 亚洲妇熟xx妇色黄| 亚洲国产你懂的| 亚洲精品视频在线观看网站| 国产精品麻豆欧美日韩ww| 久久久影院官网| 久久精品一区二区三区不卡牛牛| 日韩色在线观看| 欧美成人精品福利| 欧美不卡一区二区三区| 精品国产一区二区三区久久影院 | 国产成人av一区二区| 麻豆国产91在线播放| 久久精品国产精品亚洲精品| 免费欧美在线视频| 看电视剧不卡顿的网站| 精品一区二区三区欧美| 国内精品伊人久久久久av影院| 国内精品国产三级国产a久久 | 夜夜嗨av一区二区三区中文字幕| 日韩理论片网站| 亚洲一区二区中文在线| 亚洲国产成人porn| 蜜桃一区二区三区四区| 国产麻豆成人精品| av电影一区二区| 色天使久久综合网天天| 欧美区视频在线观看| 日韩视频一区二区三区在线播放 | 精品动漫一区二区三区在线观看 | 国产精品美女久久久久aⅴ| 国产精品久久国产精麻豆99网站| 亚洲另类色综合网站| 亚洲一级不卡视频| 久久国产精品露脸对白| 国产成人在线视频网址| 色婷婷精品久久二区二区蜜臂av | 欧美亚洲高清一区| 欧美一区二区国产| 国产精品热久久久久夜色精品三区| 国产欧美精品一区aⅴ影院| 亚洲欧美在线aaa| 亚洲影视资源网| 图片区小说区国产精品视频| 久久99热99| a4yy欧美一区二区三区| 欧美精品高清视频| 一区二区三区在线免费观看| 天堂久久久久va久久久久| 精品在线观看免费| 日本精品视频一区二区三区| 欧美一区二区三区四区视频| 国产精品视频线看| 亚洲成av人影院| 成人午夜在线视频| 4hu四虎永久在线影院成人| 国产精品色哟哟| 免费黄网站欧美| 91美女精品福利| 久久综合久久综合亚洲| 一区二区三区四区蜜桃| 国产乱一区二区| 欧美日韩在线三区| 国产精品护士白丝一区av| 日本视频一区二区| 色综合久久久久综合| 久久综合九色综合欧美就去吻| 亚洲激情五月婷婷| 狠狠色丁香久久婷婷综合丁香| 在线观看中文字幕不卡| 亚洲国产高清不卡| 蜜臀a∨国产成人精品| 在线视频一区二区免费| 日本一区二区三区四区在线视频 | 中文字幕乱码一区二区免费| 亚洲电影你懂得| 94色蜜桃网一区二区三区| 久久嫩草精品久久久精品| 日精品一区二区三区| 91久久奴性调教| 国产精品麻豆一区二区| 狠狠色丁香久久婷婷综合_中| 欧美人妖巨大在线| 亚洲自拍偷拍综合| 色婷婷香蕉在线一区二区| 欧美国产日韩一二三区| 国产在线麻豆精品观看| 制服丝袜一区二区三区| 亚洲一本大道在线| 在线免费观看日本一区| 中文字幕亚洲成人| 国产+成+人+亚洲欧洲自线| 精品国产乱码久久久久久久久 | 国产真实乱子伦精品视频| 欧美一区日韩一区| 亚洲成人在线观看视频| 91电影在线观看| 亚洲激情第一区| 欧美伊人久久久久久午夜久久久久| 亚洲色图20p| 成人不卡免费av| 亚洲欧洲av一区二区三区久久| 国产91精品一区二区| 久久亚洲一区二区三区四区| 国产综合色视频| 国产亚洲一区二区三区| 国产高清亚洲一区| 国产精品免费看片| 91蝌蚪porny成人天涯| 一区二区三区中文字幕| 国产日韩精品视频一区| 日韩欧美一区二区久久婷婷| 亚洲国产精品自拍| 欧美日韩国产在线观看| 日韩国产欧美在线播放| 欧美一级二级三级蜜桃| 国内精品不卡在线| 中文在线一区二区| 91视频观看免费| 亚洲一区视频在线| 91精品一区二区三区久久久久久 | 亚洲国产成人一区二区三区| 成人一区二区三区视频在线观看| 国产精品久久久久久久久免费相片 | 欧美精品日韩一区| 蜜桃久久久久久| 中文字幕av不卡| 欧美性猛交xxxx黑人交| 三级影片在线观看欧美日韩一区二区| 日韩一区二区三区四区五区六区| 国产在线不卡一区| 欧美高清在线一区| 久久久综合精品| 亚洲色图视频网站| 欧美日韩美女一区二区| 三级久久三级久久久| 26uuu色噜噜精品一区| 成人高清av在线| 日韩av中文字幕一区二区 |