代码问题
import urllib.request#访问网页必定要引入的模块import os
import random
def url_open(url):
req=urllib.request.Request(url)
req.add_header('User-Agent','Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3947.100 Safari/537.36')
proxies=['119.6.144.70:81','111.1.36.9:80','203:144:144:162:8080']
proxy=random.choice(proxies)
proxy_support=urllib.request.ProxyHandler({'http':proxy})
opener=urllib.request.build_opener(proxy_support)
urllib.request.install_opener(opener)
response=urllib.request.urlopen(url)
html=response.read()
print(url)
return html
def get_page(url):
html=url_open(url).decode('utf-8')
a=html.find('current.comment-page')+23
b=html.find(']',a)
return html
def find_imgs(url):
html=url_open(url).decode('utf-8')
img_adds=[]
a=html.find('img src=')
while a!=-1:
b=html.find('.jpg',a,a+255)
if b!=-1:
img_addrs.append(html)
else:
b=a+9
a=html.find('img src=',b)
for each inimg_addrs:
print(each)
def save_imgs(img_addrs):
for each in img_addrs:
filename=each.split('/'),[-1]
with open (filename,'wb') as f:
omg=url_open(each)
f.write(img)
def download_mm(folder='ooxx',page=10):
os.mkdir(folder)
os.chdir(folder)
url="http://jandan.net/ooxx/"
page_num=int(get_page(url))
for i in range(pages):
page_num-=1
page_url=url+'page'+str(page_num)+'#comments'
img_addrs=find_imgs(page_url)
save_imgs(folder,img_addrs)
if __name__=='__main__':
download_mm()
这个是小甲鱼爬妹子图片的上课的代码,我照着敲得,显示错误有问题,求帮忙修改一下代码?修改有问题的地方麻烦特殊标记一下好让我知道哪里有问题谢谢,错误的原因最好也说下 @Twilight6 波大大12138 发表于 2020-7-7 08:51
@Twilight6
打错字的参数:
img_addrs.append(html) 应该改成 img_adds
for each in img_addrs: 应该改成 img_adds
omg = url_open(each)
f.write(img) 应该把 omg 改成 img 吧
page_num = int(get_page(url))
for i in range(pages): 应该把 pages 改成 page_num 吧?
img_adds = find_imgs(page_url) 你调用 find_imgs 函数,而这个函数你没有设置返回值所以返回的永远是None,即 img_adds 返回的永远是 None
save_imgs(folder, img_addrs) 这里的参数 多传了一个 , 你定义的参数只有一个
错误很多,而且现在煎蛋网也有反爬了,你不能直接拿甲鱼哥几年前的代码来尝试,肯定爬不到你想要的
波大大12138 发表于 2020-7-7 08:51
@Twilight6
你换个网站爬爬吧,建议你去爬爬 https://www.mzitu.com/
很多新人拿这个练手的~
Twilight6 发表于 2020-7-7 09:04
打错字的参数:
img_addrs.append(html) 应该改成 img_adds
for each in img_ ...
好的,顺便再问一下看评论说小甲鱼的视频是13年的了,现在只需要看到52讲之前的基础部分,剩下的要过时了需要去专攻研究的方向是吗
波大大12138 发表于 2020-7-7 09:08
好的,顺便再问一下看评论说小甲鱼的视频是13年的了,现在只需要看到52讲之前的基础部分,剩下的要过时了 ...
这是看你个人,后面的也只有爬虫比较过时,不过爬虫过时很正常,你今天爬爬说定一个星期后网站源码就变了,但是套路还是那个套路
Tkinter 和 pygame 也不会太过时呀 错误确实有点多,你抄的仔细一点啊
页:
[1]