- Y, j+ w2 a% M8 R; h 然后建立匹配规则,用正则表达式把中间那串替换掉,最简单的就是.*?4 [; W. C# h Y* c% w' ~' j
1 l, c: }- w; k5 w( Z0 R* x
t = '<img src="(.*?)" alt="(.*?)" width="160" height="120">'# r; q; b- v) S A( P. N5 }
像这样。 7 B, R Z+ ~4 _% u* |* n0 l # y+ R- G7 i! w然后就可以调用re库里的findall方法把相关内容爬下来了:* `- t, v9 _9 F) F, V
/ P; M$ Q7 G+ \/ E
result = re.findall(t, response.text) 3 ?: _" o% p5 F& h$ x/ q' o返回的内容是由字符串组成的列表,最后我们经由爬到的地址通过python语句把图片下下来保存到文件夹里就行了。: N+ T. K1 }4 c M% N* x/ N2 B
/ J! n& L/ A4 N! z. l( u0 u程序代码5 N, E$ f0 G1 ]4 z' `# J1 ?; a
import requests- A0 y. @. P2 C b8 ]& @
import re r( a3 z& t6 x/ c7 ^+ B( g
import os. }8 V; a5 m) h' S% V$ p" q
2 H( D2 {7 C0 S6 U' O" vimage = '表情包') h- G; a! w4 }% i' s
if not os.path.exists(image):4 P& N# b" h; R! b2 i$ S
os.mkdir(image) 0 F- o' ~ |( V0 V a( yheaders = { 3 O) ~# X7 d% `6 f, L8 g6 r 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:98.0) Gecko/20100101 Firefox/98.0' ]% Q. Q* k$ W/ J$ b } 2 ?4 [9 A: L& {4 b! l$ cresponse = requests.get('https://qq.yh31.com/zjbq/',headers=headers)7 U2 K% g* l5 `& r6 M- g, j7 g- e
response.encoding = 'GBK' # K* y4 i6 r4 |7 E aresponse.encoding = 'utf-8'! s( f' u+ B0 D1 r' E9 |
print(response.request.headers)" |$ E1 S. z/ j. c3 y* p
print(response.status_code)& ~$ Z y& y$ w( I
t = '<img src="(.*?)" alt="(.*?)" width="160" height="120">'# y: H6 u3 x, Z/ b6 T/ I5 `
result = re.findall(t, response.text) * b& d3 ]% N- a5 efor img in result:: W; h- j3 J; c
print(img)3 G9 {' ^/ c2 `4 f. h9 E( I
res = requests.get(img[0])# ~ M7 U6 g+ l* h+ b1 m
print(res.status_code) / K! n# T/ I3 i) ~ s = img[0].split('.')[-1] #截取图片后缀,得到表情包格式,如jpg ,gif& W0 J8 q6 x5 j9 O( J% O+ L
with open(image + '/' + img[1] + '.' + s, mode='wb') as file:& R; l& \/ n Q m
file.write(res.content) ) N; C+ ]. O h最后结果就是这个样子: 0 Y& e# a+ T5 l! y, j+ h9 f; T: c; T6 P0 K
2 \8 c) F+ e0 }———————————————— 9 y' H+ {; p2 O g U( o) `5 I3 u版权声明:本文为CSDN博主「plexming」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 ; \5 ?8 h( T) H r" u m' a) l原文链接:https://blog.csdn.net/qq_46145027/article/details/123969044 % c& [; v9 [! r: L# q! e 2 s+ O P. u7 T! V+ y( b; g. C) U! Q2 C$ K! R