Python3爬取meitulu 原始碼 詳細注釋

2021-10-01 11:20:23 字數 3074 閱讀 6232

# -*- coding=utf-8 -*-

import time

import requests

import re

import os

from bs4 import beautifulsoup

from requests.exceptions import connectionerror, readtimeout

##url =

''headers =

# 建立頭部資訊

headers2 =

# 建立頭部資訊

defgeturl

(url)

:#傳送網路請求

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

a.encoding =

'utf-8'

#改變亂碼問題

html = a.text

#html_doc = str(html, 'utf-8')

return html

defdodown()

:# beautifulsoup是乙個html / xml解析器

# soup中是整個html物件

soup = beautifulsoup(geturl(url)

,'html.parser'

)# 解析爬取**

#print(soup)

for i in

range(1

,95):

# 2.html

mu_lu_url =

""+str

(i)+

".html"

soup2 = beautifulsoup(geturl(mu_lu_url)

,'html.parser'

)# 解析爬取**

# print(soup2)

#獲取當前目錄 有的所有集

img_mu_lu = soup2.find(

"ul",)

.find_all(

"li"

)#套圖的第一頁的實際url

#遍歷含有圖集的url標籤

for mu_lu in img_mu_lu:

# 遍歷url列表

result =

# 過濾出字典

print

('圖集名稱為:'

, result[

'title'],

,result[

'link'])

img_title = result[

'title'][

-5:]

#圖集的資料夾名稱

start1 = img_title.find(

'[')

end1 = img_title.rfind(

']')

img_count = img_title[start1 +

1:end1]

#的實際個數

# 建立資料夾

mkdir(

'c:/users/25308/desktop/python/美圖錄/'

+ result[

'title'])

# 迴圈圖集

#拼接出實際url :

("出現如下異常%s"

%ex)

defdownimage

(name,image)

:print

('第'

, name,

'張',

#用乙個新的請求頭,不然返回值為404

print

('請求返回結果:'

,img)

ifstr

(img)

==''

:print

(, end='')

f.write(img.content)

f.close(

)def

mkdir

(name)

:if os.path.exists(name)

:print

('檔案已經存在,不需要建立!'

) os.chdir(name)

# 改變當前工作目錄到指定的路徑

else

:print

('建立資料夾:'

) os.mkdir(name)

os.chdir(name)

# 改變當前工作目錄到指定的路徑

if __name__ ==

'__main__'

:# 建立資料夾

mkdir(

'c:/users/25308/desktop/python/美圖錄/'

)# 設定儲存爬取的路徑

yanshi =

0.5#設定抓取延遲(0.5秒)

dodown(

)

python3爬取電影資料

爬取電影票房資料,用於統計建模分析。目標 為電影票房資料庫 基本的爬取靜態 的技術,模擬登陸使用的是最簡單的cookies。這種模擬登陸的方式雖然簡單但有很大的侷限性,時效性比較短,也許兩三天後就失效了,或者網頁改版一點也會導致失效。最好的方式還是找到登陸頁面,獲取需要提交的資料和提交方式,模擬我們...

python3 小說爬取案例

爬取 具體書籍 res requests.get url,headers header 爬取網頁 web res.text 獲得網頁文字格式 正則匹配方法 匹配除了空格和換行之外的字元 s s 上面的匹配方法無效的時候用這個匹配全部的字元,再用上面的方法進行匹配。具體應用舉例 pattern4 re...

python3爬取高畫質桌布 2

上次只是爬取乙個 的,這次要爬取一整個頁面的所有 的。在上次的 的基礎上進行修改就行了,從 的索引頁面開始,爬取該頁面上所有的 的鏈結,再套用上次的 就行了。若要爬取多個頁面只需在外圍套上乙個迴圈就可以了。如下 import requests import refrom bs4 import bea...