兄弟姐妹們!又到了化身曹賊的時間!沖鴨!

今天咱們把這個網站上的小姐姐小哥哥都給爬下來,當然你學會了去爬啥那就都隨便了~
環境模塊
用到的環境是Python3.6和pycharm 需要安裝兩個模塊,requests和re模塊,還會用到一個pprint模塊,這個是內置的,不用安裝,咱們直接調用就可以了。
代碼部分
大概的意思都寫在注釋了,就不一一解釋了,讓我們直接用代碼說話,反正寫的太詳細了,你們也不看看,就喜歡代碼…

import requests # 模擬發送請求 # pip install requests import pprint # 格式化輸出模塊 內置模塊 import re # 正則表達式模塊 專門用於字符串 匹配, 替換, 分割 def change_title(title): new_title = re.sub('[\\\/\:\*\?\"\<\>\|]', '_', title) return new_title for page in range(6, 11): try: #打印的時候顯示爬多少頁 print(f'=======================正在抓取第{page}頁數據=========================') # 1. 找數據對應的url連接地址 if page == 1: url = 'https://v.6.cn/minivideo/getMiniVideoList.php?act=recommend&page=1&pagesize=30' else: url = f'https://v.6.cn/minivideo/getMiniVideoList.php?act=recommend&page={page}&pagesize=25' # user-agent 瀏覽器的身份標識 headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.54 Safari/537.36'} # 2. 發送地址請求(包含了各種各樣的數據) ua 偽裝 遇到請求不到數據的時候可以考慮偽裝 response = requests.get(url=url, headers=headers) # json數據: 數據返回的一種形式 json_data = response.json() # pprint.pprint(json_data) # 3. 數據解析 字典: 數據容器 data_list = json_data['content']['list'] # print(data_list) # 數據類型 流程控制 數據容器 ... for data in data_list: title = data['title'] # 視頻的標題 # mp4 avi rmvb flv awn... playurl = data['playurl'] # 視頻地址 # print(title, playurl) # 請求視頻數據 視頻數據 圖片 音頻 都屬於二進制數據 video_data = requests.get(url=playurl, headers=headers).content new_title = change_title(title) # 4. 數據的保存 with open('video\\' + new_title + '.mp4', mode='wb') as f: f.write(video_data) print('保存完成:', new_title) except: continue
#兄弟們學習python,有時候不知道怎么學,從哪里開始學。掌握了基本的一#些語法或者做了兩個案例后,不知道下一步怎么走,不知道如何去學習更加高深的知識。 #那么對於這些大兄弟們,我准備了大量的免費視頻教程,PDF電子書籍,以及#視頻源的源代碼! #還會有大佬解答! #都在這個裙里了 872937351 #歡迎加入,一起討論 一起學習!
爬取結果
注意,這里沒寫自動創建文件,所以要自己先創建一個video文件和代碼放到一起,不然沒有結果的。

視頻教程:
兄弟們,你的三連就是我的動力,能讓我動力加滿嗎!
