Python爬虫基础

**

python爬取中国国家地理网图片代码

刚刚学python,不足之处请指正

要实现的功能:
从中国国家地理网上解析网页源码,循环获取图片的资源,并下载到本地
这里只需要更改root的路径就可以

    import os
    import requests
    from bs4 import BeautifulSoup
    import re  # 用正则表达式来解析网页的img标签下的src资源或者用美丽汤
    #测试用网页:http://www.dili360.com/gallery/cate/1.htm
    x = input("1.风光 2.人文 3.航拍 4.水下 5.建筑 6.动物 7.植物 8.星空 9.黑白 10.专题 \r\n请输入需要爬取的页数:")  # \r\n换行符
    res = requests.get("http://www.dili360.com/gallery/cate/"+x+".htm")  # 获取网页源码
    texts = res.text
    bf = BeautifulSoup(texts)
    s = bf.find_all("img")
    name = bf.find_all("a", href="/gallery/cate/"+x+".htm")  # 标签
    count = len(name)
    for Name in range(count):
        kk = name[Name].string
        if kk is not None:
            wenJianMing=""
            wenJianMing = kk
    listCount = len(s)
    root = "G://pycharm//爬虫专用文件夹//"+wenJianMing+"//"
    num = 1
    for i in range(listCount):
        if not os.path.exists(root):
            os.mkdir(root)
        path = root + '%d'%num + ".jpg"  # int类型转换成str型,要加上.jpg才可以识别文件类型
        src = s[i].get("src")  # 相当于正则表达式的方法获取src资源
        l = len(src)
        sr = src[0:l-5]  # 删减后缀,变成jpg
        if sr[-3:] == "jpg":  # 判断是否是.jpg后缀的文件
            num +=1
            print('{}{}{}{}'.format(num, " ", ":", sr))
            re = requests.get(sr)
            with open(path, "wb") as f:
                f.write(re.content)
                f.close()
                print(wenJianMing+"图片保存成功")

`

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值