鱼C论坛

 找回密码
 立即注册
查看: 632|回复: 5

关于爬虫爬去煎蛋网妹子图的问题

[复制链接]
发表于 2018-8-12 21:09:03 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. import urllib.request
  2. import os
  3. def get_page(url):
  4.     req=urllib.request.Request(url)
  5.     req.add_header('User-Agent','Mozilla/5.0 (Windows NT 10.0; WOW64; rv:61.0) Gecko/20100101 Firefox/61.0')
  6.     request=urllib.request.urlopen(req)
  7.     html=response.read().decode('utf-8')
  8.     a=html.find('current-comment-page')+23
  9.     b=html.find(']',a)
  10.     print(html[a:b])
  11. def find_imgs(url):
  12.    
  13.     pass
  14. def save_imgs(folder,img_addrs):
  15.     pass
  16. def download_mm(folder='ooxx',pages=10):
  17.     os.mkdir(folder)
  18.     os.chdir(folder)

  19.     url='http://jandan.net/ooxx'
  20.     page_num=int(get_page(url))

  21.     for i in range(pages):
  22.         page_num-=i
  23.         page_url=url+'page-'+str(page_num)+'#comments'
  24.         img_addrs=find_imgs(page_url)
  25.         save_imgs(folder,img_addrs)


  26. if __name__=='__main__':
  27.     download__mm
复制代码

然后显示
Traceback (most recent call last):
  File "D:/爬图.py", line 31, in <module>
    download__mm
NameError: name 'download__mm' is not defined
知道会有错误,为啥无法显示页数啊?
还有问一下,最开始get_page(url)后面url不应该是个参数吗?为啥在其他函数里面给的url网址也能在这个函数里面用啊,不应该写在最开始吗?之前从零开始入门的视频都看了,是看漏了?这明显又不是继承啊……
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-8-12 21:11:11 | 显示全部楼层
多了个下划线
download__mm
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-8-12 23:07:14 | 显示全部楼层
download_mm()
括号也没有

url只是个用来表示网址比较方便,变量名可以换的 他们没要求一定是一个url
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-8-13 14:50:19 | 显示全部楼层
塔利班 发表于 2018-8-12 23:07
download_mm()
括号也没有

为啥def函数名后面(url)就能表示那个网址啊?不应该是在最开头写吗?写在其他函数里怎么就可以在另一个函数直接用了啊?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-8-13 14:59:30 | 显示全部楼层

改了,但是还是无法显示图片的页码
  1. import urllib.request
  2. import os
  3. def get_page(url):
  4.     req=urllib.request.Request(url)
  5.     req.add_header('User-Agent','Mozilla/5.0 (Windows NT 10.0; WOW64; rv:61.0) Gecko/20100101 Firefox/61.0')
  6.     request=urllib.request.urlopen(req)
  7.     html=response.read().decode('utf-8')
  8.     a=html.find('current-comment-page')+23
  9.     b=html.find(']',a)
  10.     print(html[a:b])
  11. def find_imgs(url):
  12.    
  13.     pass
  14. def save_imgs(folder,img_addrs):
  15.     pass
  16. def download_mm(folder='ooxx',pages=10):
  17.     os.mkdir(folder)
  18.     os.chdir(folder)

  19.     url='http://jandan.net/ooxx'
  20.     page_num=int(get_page(url))

  21.     for i in range(pages):
  22.         page_num-=i
  23.         page_url=url+'page-'+str(page_num)+'#comments'
  24.         img_addrs=find_imgs(page_url)
  25.         save_imgs(folder,img_addrs)


  26. if __name__=='__main__':
  27.     download_mm
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-8-13 15:03:24 | 显示全部楼层
1955207586 发表于 2018-8-13 14:59
改了,但是还是无法显示图片的页码

煎蛋反爬了。
绕过反爬的方法可以搜索一下。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-19 04:44

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表