`

python抓取网页图片示例(python爬虫)

 
阅读更多
#!/usr/bin/python
#-*- encoding: utf-8 -*-

import urllib2
import urllib
import re
import time
import os
import uuid

#获取二级页面url
def findUrl2(html):
    re1 = r'http://tuchong.com/\d+/\d+/|http://\w+(?<!photos).tuchong.com/\d+/'
    url2list = re.findall(re1,html)
    url2lstfltr = list(set(url2list))
    url2lstfltr.sort(key=url2list.index)
    #print url2lstfltr
    return url2lstfltr

#获取html文本
def getHtml(url):
    html = urllib2.urlopen(url).read().decode('utf-8')#解码为utf-8
    return html

#下载图片到本地
def download(html_page , pageNo):
    #定义文件夹的名字
    x = time.localtime(time.time())
    foldername = str(x.__getattribute__("tm_year"))+"-"+str(x.__getattribute__("tm_mon"))+"-"+str(x.__getattribute__("tm_mday"))
    re2=r'http://photos.tuchong.com/.+/f/.+\.jpg'
    imglist=re.findall(re2,html_page)
    print imglist
    download_img=None
    for imgurl in imglist:
        picpath = '/home/%s/%s'  % (foldername,str(pageNo))
        filename = str(uuid.uuid1())
        if not os.path.exists(picpath):
            os.makedirs(picpath)
        target = picpath+"/%s.jpg" % filename
        print "The photos location is:"+target
        download_img = urllib.urlretrieve(imgurl, target)#将图片下载到指定路径中
        time.sleep(1)
        print(imgurl)
    return download_img

# def callback(blocknum, blocksize, totalsize):
#     '''回调函数
#     @blocknum: 已经下载的数据块
#     @blocksize: 数据块的大小
#     @totalsize: 远程文件的大小
#     '''
#     print str(blocknum),str(blocksize),str(totalsize)
#     if blocknum * blocksize >= totalsize:
#         print '下载完成'
def quitit():
    print "Bye!"
    exit(0)

if __name__ == '__main__':
    print '''            *****************************************
            **    Welcome to Spider for TUCHONG    **
            **      Created on 2014-4-24           **
            **      @author: Leon Wong             **
            *****************************************'''
    pageNo = raw_input("Input the page number you want to scratch (1-100),please input 'quit' if you want to quit>")
    while not pageNo.isdigit() or int(pageNo) > 100 :
        if pageNo == 'quit':quitit()
        print "Param is invalid , please try again."
        pageNo = raw_input("Input the page number you want to scratch >")

    #针对图虫人像模块来爬取
    html = getHtml("http://tuchong.com/tags/%E4%BA%BA%E5%83%8F/?page="+str(pageNo))

    detllst = findUrl2(html)
    for detail in detllst:
        html2 = getHtml(detail)
        download(html2,pageNo)
    print "Finished."

 

分享到:
评论

相关推荐

    python爬虫抓取网页图片多种示例

    python爬虫抓取网页图片在Python中,你可以使用requests库来发送HTTP请求,以及BeautifulSoup或Scrapy库来解析网页内容。你也可以使用selenium库,它是一个自动化测试工具,用于模拟用户在浏览器中的操作。下面是一...

    Python简单网页爬虫示例

    本示例将探讨如何利用Python实现一个简单的网页爬虫,主要涉及的技术包括BeautifulSoup(bs4库)和requests库。 首先,requests库是Python中用于发送HTTP请求的重要工具。通过这个库,我们可以方便地向指定的URL...

    python抓取网页图片.zip

    在Python编程语言中,"python抓取网页图片.zip"这个压缩包文件可能包含了一个示例项目,教我们如何使用Python来抓取网络上的图片。在Web抓取领域,这通常涉及到网络爬虫的编写,目的是自动下载网页中的图像资源。...

    Python爬虫抓取图片以及使用Spider模仿用户行为抓取403错误网页

    本教程将深入探讨Python爬虫的基本概念,重点在于如何抓取网页、处理图片,并解决在模拟用户行为时遇到的403 Forbidden错误。我们将通过具体的代码示例来详细解释这些知识点。 1. **Python爬虫基础**: - **网络...

    python 爬虫之抓取页面图片

    在本例中,我们将深入探讨如何使用Python抓取网站上的图片,并了解相关的知识点。 首先,我们需要了解基础的网络请求库,如`requests`。`requests`库允许我们向服务器发送HTTP请求,获取响应,进而获取网页的HTML源...

    Python实现抓取网页生成Excel文件的方法示例

    本文实例讲述了Python实现抓取网页生成Excel文件的方法。分享给大家供大家参考,具体如下: Python抓网页,主要用到了PyQuery,这个跟jQuery用法一样,超级给力 示例代码如下: #-*- encoding:utf-8 -*- import sys...

    python简单爬虫抓取网页内容实例

    一个简单的python示例,实现抓取 嗅事百科 首页内容 ,大家可以自行运行测试

    c#+python爬虫示例

    2. Python爬虫基础:学习使用requests和BeautifulSoup/lxml等库进行网页抓取和解析。 3. 数据处理与存储:掌握如何在C#中处理抓取到的数据,并将其展示或保存。 4. 网络请求与异常处理:理解HTTP请求的基本原理,...

    Python爬虫-使用Python开发的爬虫示例demo.zip

    Python爬虫技术是一种用于自动化网络数据抓取的编程方法,尤其在大数据分析、搜索引擎优化、内容监测等领域有着广泛的应用。本示例“Python爬虫-使用Python开发的爬虫示例demo.zip”提供了详细的Python爬虫开发教程...

    python爬虫抓取网页数据开发教程.docx

    通过本教程的学习,您应该已经掌握了使用Python抓取网页数据的基本方法。从环境搭建到具体实践,每一步都详细讲解了如何使用Python中的`requests`和`BeautifulSoup`库来完成这一过程。无论是对于初学者还是有一定...

    python抓取淘宝天猫网页商品详情Demo.zip

    本项目"python抓取淘宝天猫网页商品详情Demo.zip"是一个利用Python进行网络数据抓取的示例,主要涉及到以下几个核心知识点: 1. **网络请求库**:在Python中,我们通常使用如`requests`库来发送HTTP请求,获取网页...

    python爬虫发邮件示例demo

    在这个“python爬虫发邮件示例demo”中,我们将探讨如何结合Python的爬虫技术和邮件发送功能,实现自动抓取数据并将其通过电子邮件发送出去。 首先,我们需要了解Python中的两个关键库:`requests` 和 `...

    python爬虫抓取网页数据.docx

    本文将详细介绍一些常用的Python爬虫技术和工具,并通过一个简单的示例来展示如何使用这些工具来抓取网页数据。 #### 二、常用库和技术 ##### 1. **基本库** - **requests**:一个非常流行的HTTP库,它允许开发者...

    Python爬虫入门教程:超级简单的Python爬虫教程.pdf

    在进行Python爬虫开发之前,首先要了解网页的基本构成。网页通常包含三个主要部分:HTML(超文本标记语言)、CSS(层叠样式表)以及JavaScript(一种常用的脚本语言)。 1. **HTML**: - **定义**:HTML是构建网页...

    Python实现爬虫抓取与读写、追加到excel文件操作示例

    总结,本示例主要展示了Python如何通过爬虫抓取网页数据,以及如何将这些数据存储到Excel文件中。通过学习这一示例,你可以掌握基本的网络爬虫技术和Excel文件操作技巧,为后续的数据分析和处理奠定基础。

    python爬虫爬取新闻示例.zip

    爬虫通常由搜索引擎、数据挖掘工具、监测系统等应用于网络数据抓取的场景。 爬虫的工作流程包括以下几个关键步骤: URL收集: 爬虫从一个或多个初始URL开始,递归或迭代地发现新的URL,构建一个URL队列。这些URL...

    Python爬虫实践代码示例.zip

    Python爬虫是编程领域中一个热门且实用的技术,主要用于自动抓取互联网上的信息。这个名为“Python爬虫实践代码示例.zip”的压缩包文件显然包含了关于如何使用Python编写爬虫的实战代码。在这个压缩包中,我们可以...

    Python爬虫抓取小说网站的基本方法

    Python 爬虫技术在数据抓取领域中扮演着重要角色,尤其对于喜欢阅读网络小说的用户来说,爬取小说网站能帮助我们批量获取并存储感兴趣的小说内容。本教程将介绍如何使用 Python 的 BeautifulSoup 框架来抓取小说网站...

    python 爬虫爬取简历

    总结起来,Python爬虫爬取简历模板涉及的主要知识点包括:使用`requests`库进行HTTP请求,使用BeautifulSoup或Scrapy解析和提取HTML内容,理解HTML结构并定位目标元素,处理分页和登录验证,以及注意网络爬虫的道德...

Global site tag (gtag.js) - Google Analytics