鱼C论坛

 找回密码
 立即注册
查看: 1404|回复: 2

[已解决]python爬虫只爬出来一张图片

[复制链接]
发表于 2019-9-17 17:22:18 | 显示全部楼层 |阅读模式

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

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

x
爬了两个贴,一个能够正常爬,另一个只能出一个图片
图片链接的正则表达式前面部分是一样的,应该没有问题,所以我找不到问题在哪
大佬们帮帮忙啊。
以下是代码:

import urllib.request
import re
import os

def open_url(url):
    req = urllib.request.Request(url)
    req.add_header('User-Agent','')
    '''
    记得输入User_Agent
    '''
    page = urllib.request.urlopen(req)
    html = page.read().decode('utf-8')

    return html

def get_img(html,folder='11'):
    os.mkdir(folder)
    os.chdir(folder)
    p = r'src="(https://imgsa.baidu.com[^"]+\.jpg)"'
    imglist = re.findall(p,html)
   
    '''
    测试图片网站↓
    '''
    for each in imglist:
        print(each)
        
    '''
    (保存图片↓)
    for each in imglist:
        filename = each.split("/")[-1]
        urllib.request.urlretrieve(each,filename,None)
    '''

if __name__ == '__main__':
    url = 'https://tieba.baidu.com/p/6092958671'
    folder = input('保存文件夹名称:')
    get_img(open_url(url),folder)

'''
(两个测试的网站)
https://tieba.baidu.com/p/6251125298?pn=3  --->  只能爬一张
https://tieba.baidu.com/p/6092958671       --->  一次能爬完

'''


最佳答案
2019-9-17 18:21:42
你的代码没问题,问题出在你给的网页上,第一个网页只有一个符合条件的图片,所以就得到了一张图片,你可以打开那个网页看一下。

第二个网站里面有11张符合条件的,保存出来11个,没问题
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-9-17 18:21:42 | 显示全部楼层    本楼为最佳答案   
你的代码没问题,问题出在你给的网页上,第一个网页只有一个符合条件的图片,所以就得到了一张图片,你可以打开那个网页看一下。

第二个网站里面有11张符合条件的,保存出来11个,没问题
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-9-17 20:59:25 | 显示全部楼层
facevoid 发表于 2019-9-17 18:21
你的代码没问题,问题出在你给的网页上,第一个网页只有一个符合条件的图片,所以就得到了一张图片,你可以 ...

谢谢大佬,我知道了https://tieba.baidu.com/p/6251125298?pn=3中的pn=3是帖子的第几页,第三页是只有一个符合的,我在F12里面搜索jpg是整个贴吧的。感谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-28 13:19

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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