爬pixiv需要科学在线导包导入requests,os,time,winsound设置提示音,下载完成后系统提示音duration=3000#millisecondfreq=440#Hzsetheadersheaders={"cookie":yourcookie,'Referer':'https://www.pixiv.net/','user-agent':'Mozilla/5.0(WindowsNT10.0;WOW64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/96.0.4664.110Safari/537.36'}提取自己的cookie,先登录,在网页上右击,点击check,点击左侧network点击arequest,找到headers,复制cookieo=1#counter,显示数量worksdownloadedtoforminrange(1,3):#只下载前100个作品shs=requests.get("https://www.pixiv.net/ranking.php?p="+str(m)+"&format=json",headers=headers)#InitiateRequestshs.encoding='utf-8'print(shs.text)zbj=shs.json()forkinzbj["contents"]:illust_id=k["illust_id"]#提取作品idswk=requests.get("https://www.pixiv.net/ajax/illust/"+str(illust_id)+"/pages?lang=zh",headers=headers)swk_j=swk.json()j=1#counter,在swk_j["body"]中显示为i下载本作品的前几张图片:original=i["urls"]["original"].replace("\\","")#去除多余符号print(original)ts=requests.get(original,headers=headers)print(str(o)+""+str(j))print(ts)ifnotos.path.exists("pic"):#创建图片文件夹os.mkdir("pic")withopen("pic"+"/"+str(illust_id)+"_"+str(j)+"."+original.split(".")[-1],"wb")asf:f.write(ts.content)#保存图片j+=1time.sleep(2)#rest2s防止反爬o+=1winsound.Beep(freq,duration)#systembeepcompletecodeimportrequests,os,time,winsoundduration=3000#millisecondfreq=440#Hzheaders={“cookie”:您的cookie,“Referer”:“https://www.pixiv.net/”,“user-agent”:“Mozilla/5.0(WindowsNT10.0;WOW64)AppleWebKit/537.36(KHTML,如Gecko)Chrome/96.0.4664.110Safari/537.36'}o=1forminrange(1,3):shs=requests.get("https://www.pixiv.net/ranking.php?p="+str(m)+"&format=json",headers=headers)shs.encoding='utf-8'print(shs.text)zbj=shs.json()forkinzbj["contents"]:illust_id=k["illust_id"]swk=requests.get("https://www.pixiv.net/ajax/illust/"+str(illust_id)+"/pages?lang=zh",headers=headers)swk_j=swk.json()j=1foriinswk_j["body"]:original=i["urls"]["original"].replace("\\","")print(original)ts=requests.get(original,headers=headers)print(str(o)+""+str(j))print(ts)如果不是os.path.exists("pic"):os.mkdir("pic")withopen("pic"+"/"+str(illust_id)+"_"+str(j)+"."+original.split(".")[-1],"wb")asf:f.write(ts.content)j+=1time.sleep(2)o+=1winsound.Beep(freq,duration)#systembeep
