import requests
from lxml import etree
import re
try:
start_url = 'https://www.doutula.com/article/list/?page={}'
page=1
cout=1
for page in range(1,605):
url =start_url.format(page)
headers={'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36'}
r=requests.get(url,headers=headers).text
e=etree.HTML(r)
source_title=e.xpath('//div[@ class="col-sm-9"]/a/div[@ class="random_title"]/text()')
source_url=e.xpath('//div[@ class="col-sm-9"]/a/@href')
for a, g in zip(source_title,source_url):
title =a
d_url=g
img_url=requests.get(d_url,headers=headers).text
lxml=etree.HTML(img_url)
img_title=lxml.xpath('//div[@ class="artile_des"]/table/tbody/tr/td/a/img/@alt')
img_src=lxml.xpath('//div[@ class="artile_des"]/table/tbody/tr/td/a/img/@src')
for z,w in zip(img_title,img_src):
major_url=w
major_title=z
major = requests.get(major_url)
with open('斗图资源/{}'.format(major_title+major_url[-4:]),'wb')as f:
f.write(major.content)
print("》》》{}下载已完成".format(major_title))
print("》》》已经下载了{}".format(cout)+"张")
cout+=1
except (Exception,IOError):
print('跳过')