• 爬取京东历史图书图片并下载到本地____requests库


    # 写在开头:保持每天更新一篇压力还是挺大的,仔细看看之前更新的文章发现。我的文章对新手不太友好,因为已经有的特别好的python基础入门资料太多,我也不想只做一个搬运工。时间有限,我的文章只能作为一个补充,以及自我记录总结的工具,作为我个人学习python的一个记录。目前想写出很好的实战价值的文章还是有些难度,能力和时间都不够。但是我会向这个方向努力。

    #那么我博客的价值在哪里呢?我觉得目前的价值是对我更大;如果说是对不小心看到我这里的读者来说。如果看到我的探索和记录,希望我的行为能给你坚持的力量;同时,我的部分文章中是我切实在菜鸟学习过程中踩过的各种坑,其实如果能静下心来阅读还是有很多收获的,我保证。当然,你如果有兴趣也可以和我一道学习,并来和我交流。这条路我是一定会坚持走下去的。

    # 今天放一篇,我三天前自己写的一个爬虫,过程中遇到很多问题,不过能做出来也很开心了。后期我会完善,继续把这篇代码扩展。



    code:

    import requests
    import re
    
    
    def craw(url, page):
        # url = "https://list.jd.com/list.html?cat=1713,3258,3317"
        headers = {
            "User-Agent": "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 Mobile Safari/537.36",
        }
        response = requests.get(url, headers=headers, timeout=10)
        html = response.text
        # print(html)
        urls = re.findall(
            r'<div class="p-img".*?img width="200" height="200" data-img="1" src="//(img.*?\.360buyimg.com/.*?\.jpg).*?</a>',
            html, re.S)
    
        x = 1
        for b_url in urls:
            p_url = "https://" + str(b_url)
            # print(b_url)
            print(p_url)
            filename = "C:/Users/XIEG2/Desktop/ll/" + str(page) +"--" + str(x) + ".jpg"
            fb = open(filename, 'wb+')
            req = requests.get(p_url)
            # print(req.encoding)
            # print(req.text)
            fb.write(req.content)  # 哈哈,神奇  原来就是 content 方法
            fb.close()
            x += 1
    
    # 选择爬取页数
    def craw_page(page):
        for i in range(1, page):
            url = "https://list.jd.com/list.html?cat=1713,3258,3317&page=" + str(i)
            craw(url, i)
    craw_page(10) # 数字可以随意指定,建议大家数字设小一点,免得给服务器造成负担。当然,京东服务器轻易也不会崩溃。哈哈
    



  • 相关阅读:
    Python学习---IO的异步[tornado模块]
    Python学习---IO的异步[twisted模块]
    Python学习---IO的异步[gevent+Grequests模块]
    Python学习---IO的异步[asyncio +aiohttp模块]
    Python学习---IO的异步[asyncio模块(no-http)]
    Python学习---Python的异步IO[all]
    Python学习---爬虫学习[scrapy框架初识]
    Python学习---Django关于POST的请求解析源码分析
    Python学习---爬虫学习[requests模块]180411
    Python实例---CRM管理系统分析180331
  • 原文地址:https://www.cnblogs.com/xiegalpha/p/9231664.html
Copyright © 2020-2023  润新知