日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python爬虫模式_python爬虫的入门试炼

發布時間:2024/3/13 python 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python爬虫模式_python爬虫的入门试炼 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

網絡爬蟲初解:

如果我們把互聯網比作一張大的蜘蛛網,數據便是存放于蜘蛛網的各個節點,而爬蟲就是一只小蜘蛛,沿著網絡抓取自己的獵物(數據)爬蟲指的是:向網站發起請求,獲取資源后分析并提取有用數據的程序;從技術層面來說就是 通過程序模擬瀏覽器請求站點的行為,把站點返回的HTML代碼/JSON數據/二進制數據(圖片、視頻) 爬到本地,進而提取自己需要的數據,存放起來使用。

image

爬取某網站的基本信息 :

先以貓眼網站(http://maoyan.com/board/4)為例:

想從網站獲取的信息有:

電影名稱,演員作者,發布時間,評分

電影名稱:name

演員作者:star

發布時間:release_time

評分:scores

最關鍵的步驟如下:在網站中分別選中電影名稱;作者;發布時間;評分右鍵選擇檢查,會出現所示代碼然后復制下來,將該網頁源代碼打開,搜索相同字段,然后選擇出你需要的部分,通過pycharm代碼將你選擇的電影名稱;作者;發布時間;評分等爬取下來。

詳細的整體代碼如下:

import requests

import re

import time

headers = {

'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36'

}

def get_info(url):

res = requests.get(url,headers=headers)

names = re.findall('

stars = re.findall('

(.*?)

',res.text,re.S)

release_times = re.findall('

上映時間:(.*?)

',res.text)

scores = re.findall('

(.*?)(.*?)

',res.text)

for name,star,release_time,score in zip(names,stars,release_times,scores):

print(name,star.strip(),release_time,score[0]+score[1])

if __name__ == '__main__':

urls = ['http://maoyan.com/board/4?offset={}'.format(str(i)) for i in range(0, 100, 10)]

for url in urls:

get_info(url)

time.sleep(0)

爬取后的信息很多,有一點亂,這就需要整理一下信息。

運用pycharm與Excel相結合,通過pycharm建立Excel文件。

例如:建立一個姓名,性別的Excel的文件。

import csv

fp = open('C:/Users/lenovo/Desktop/text.csv','w',encoding='utf-8',newline='')

writer = csv.writer(fp)

writer .writerow(['name','sex'])

writer .writerow(['***','男'])

整理信息

運用上面的例子,然后將爬取信息的信息整理到Excel文件夾中:

詳細代碼如下:

import requests

import re

import csv

headers = {

'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36'

}

def get_info(url):

res = requests.get(url,headers=headers)

names = re.findall('

stars = re.findall('

(.*?)

',res.text,re.S)

release_times = re.findall('

上映時間:(.*?)

',res.text)

scores = re.findall('

(.*?)(.*?)

',res.text)

for name,star,release_time,score in zip(names,stars,release_times,scores):

print(name,star.strip(),release_time,score[0]+score[1])

writer.writerow([name, star.strip(), release_time, score[0] + score[1]])

if __name__ == '__main__':

fp = open('C:/Users/lenovo/Desktop/新建文件夾 (2)/python代碼/text.csv', 'w', encoding='utf-8', newline='')

writer = csv.writer(fp)

writer.writerow(['name','star','release_times','scores'])

urls = ['http://maoyan.com/board/4?offset={}'.format(str(i)) for i in range(0, 100, 10)]

for url in urls:

get_info(url)

如此一來就將貓眼視頻上的信息爬取了下來,然后我們還可以通過Excel進行各種對比;選擇,挑選出最好的,等等一系列人們所需要的數據。

這就是最簡單的python知識。后面我們將慢慢對python進行解讀,以下僅供趣讀:

Python 是一個高層次的結合了解釋性、編譯性、互動性和面向對象的腳本語言。

Python 的設計具有很強的可讀性,相比其他語言經常使用英文關鍵字,其他語言的一些標點符號,它具有比其他語言更有特色語法結構。

Python 特點

易于學習:Python有相對較少的關鍵字,結構簡單,和一個明確定義的語法,學習起來更加簡單。

易于閱讀:Python代碼定義的更清晰。

易于維護:Python的成功在于它的源代碼是相當容易維護的。

一個廣泛的標準庫:Python的最大的優勢之一是豐富的庫,跨平臺的,在UNIX,Windows和Macintosh兼容很好。

互動模式:互動模式的支持,您可以從終端輸入執行代碼并獲得結果的語言,互動的測試和調試代碼片斷。

可移植:基于其開放源代碼的特性,Python已經被移植(也就是使其工作)到許多平臺。

可擴展:如果你需要一段運行很快的關鍵代碼,或者是想要編寫一些不愿開放的算法,你可以使用C或C++完成那部分程序,然后從你的Python程序中調用。

數據庫:Python提供所有主要的商業數據庫的接口。

GUI編程:Python支持GUI可以創建和移植到許多系統調用。

可嵌入: 你可以將Python嵌入到C/C++程序,讓你的程序的用戶獲得"腳本化"的能力。

大家一定要認真對待,不能像 小C(作者)一樣,相信你們一定學的更好。

總結

以上是生活随笔為你收集整理的python爬虫模式_python爬虫的入门试炼的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。