有些冗余信息。由于之前測试正則表達式。所以没有把它们给移走。只是不影响使用。

# -*- coding:utf-8 -*-
import re,urllib,sys,os,time def getAllUrl():
entry=sys.argv[1]
#try:
getPage=urllib.urlopen(entry).read()
#except:
# print "Error" pattern=re.compile(r'<a href="(.+? )".+?>')
web_site_pattern=re.compile(r'(http:.+?)')
all_url = pattern.findall(getPage)
for url in all_url:
if web_site_pattern.match(url):
print url
#print url print "done" def download_pic():
url=sys.argv[1];
#local_path="C:/Tools/source/"
connection=urllib.urlopen(url)
data=connection.read()
print "Waiting to get data"
time.sleep(3)
connection.close() #analyze
#p=re.compile(r'img width="\d+".+src="(.+)".+')
download_pic_pattern=re.compile(r'<img src="(.+?\.jpg)".+?/>')
#p10=re.compile(r'(.+)\.jpg')
all_url=download_pic_pattern.findall(data)
#print all_url
i=1
directory="C:/Tools/source"
name_pattern=re.compile(r'/(\w+?\.jpg)')
if not os.path.exists(directory):
os.mkdir(directory) for urls in all_url:
print urls
#print "working" #print local_path
i=i+1
name=name_pattern.findall(urls)
print name[0]
local_path="C:/Tools/source/%s" % name[0]
jpeg_connection=urllib.urlopen(urls) jpeg=jpeg_connection.read()
time.sleep(1)
print "waiting"
f=file(local_path,"wb")
f.write(jpeg) f.close()
jpeg_connection.close()
#i=i+1 #f=file(local_path,"wb")
#f.write(data)
#f.close()
print("Done") def download_pic_2():
url=sys.argv[1];
local_path="C:/Tools/a.jpg"
data=urllib.urlretrieve(url,local_path)
print("Done") def regulation():
str1="abc123*GBK1024abc*defb1kc12*addd" p1=re.compile(r'abc')
print p1.findall(str1) p2=re.compile(r'a.c')
print p2.findall(str1) p3=re.compile(r'abc\*')
print p3.findall(str1) p4=re.compile(r'[abc]12')
print p4.findall(str1) p5=re.compile(r'\d\*')
print p5.findall(str1) p6=re.compile(r'a[^\d]')
print p6.findall(str1) p7=re.compile(r'a[^\d]*')
print p7.findall(str1) p8=re.compile(r'[a-zA-Z]+(\d+)')
print p8.findall(str1) str2="dadfae ef <img atl=\"500\" src=\"www.qq.com/1.jpg\" width=\"700\"> asdfe aa<ima" p9=re.compile(r'<img .+ src="(.+)" .+>')
urls=p9.findall(str2)
#print
print urls
for url in urls:
print url if __name__ =="__main__":
#main()
#download_pic_2()
#regulation()
download_pic()
#getAllUrl()

#######兴许

后面改动了代码,使用beautifulsoup,能够更大范围的下载图片

代码例如以下: http://www.30daydo.com/article/56

python批量下载色影无忌和蜂鸟的图片 爬虫小应用的更多相关文章

  1. 用python批量下载图片

    一 写爬虫注意事项 网络上有不少有用的资源, 如果需要合理的用爬虫去爬取资源是合法的,但是注意不要越界,前一阶段有个公司因为一个程序员写了个爬虫,导致公司200多个人被抓,所以先进入正题之前了解下什么 ...

  2. 用Python批量下载DACC的MODIS数据

    本人初次尝试用Python批量下载DACC的MODIS数据,记下步骤,提醒自己,数据还在下载,成功是否未知,等待结果中...... 若有大佬发现步骤有不对之处,望指出,不胜感激. 1.下载Python ...

  3. 用python批量下载贴吧图片 附源代码

    环境:windows 7 64位:python2.7:IDE pycharm2016.1 功能: 批量下载百度贴吧某吧某页的所有帖子中的所有图片 使用方法: 1.安装python2.7,安装re模块, ...

  4. python——批量下载图片

    前言 批量下载网页上的图片需要三个步骤: 获取网页的URL 获取网页上图片的URL 下载图片 例子 from html.parser import HTMLParser import urllib.r ...

  5. python批量下载微信好友头像,微信头像批量下载

    #!/usr/bin/python #coding=utf8 # 自行下载微信模块 itchat 小和QQ496631085 import itchat,os itchat.auto_login() ...

  6. Python 批量下载BiliBili视频 打包成软件

    文章目录 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手.很多已经做案例的人,却不知道如何去学习更加高深的知识.那么针对这三类人,我给大家 ...

  7. Python - 批量下载 IIS 共享的文件

    1.说明 用 IIS 以WEB形式发布了本地文件夹,提供文件下载,并设置了访问权限:默认下载需要点击一个一个的下载,web界面如下: 3.脚本 执行脚本批量下载文件,会在当前目录创建文件夹,并压缩该文 ...

  8. 047_批量下载有序文件(pdf、图片、视频等等)

    #!/bin/bash#本脚本准备有序的网络资料进行批量下载操作(如 01.jpg,02.jpg,03.jpg)#设置资源来源的域名连接 url="http://www.test.com/& ...

  9. python批量下载图片的三种方法

    一是用微软提供的扩展库win32com来操作IE: win32com可以获得类似js里面的document对象,但貌似是只读的(文档都没找到). 二是用selenium的webdriver: sele ...

随机推荐

  1. 常用的ES6方法

    常用的ES6方法 ES6之后,新增了定义变量的两个关键字,分别是let和const. let和const都能够声明块级作用域,用法和var是类似的,let的特点是不会变量提升,而是被锁在当前块中. 实 ...

  2. maven规定的目录

    Maven规定的目录结构 若要使用Maven,那么项目的目录结构必须符合Maven的规范 ,如写一个使用Spring的Web项目就需要引入大量的jar包.一个项目Jar包的数量之多往往让我们瞠目结舌, ...

  3. bzoj 1600 &amp; Usaco 月赛 2008 建造栅栏 题解

    [原题] 1600: [Usaco2008 Oct]建造栅栏 Time Limit: 5 Sec  Memory Limit: 64 MB Submit: 785  Solved: 443 [Subm ...

  4. Markdown简单介绍和基本的语法

    原文发表自我的个人站点 http://www.hainter.com/markdown.欢迎大家訪问,谢谢支持~ Markdown是一种语言,能够用于编写高质量的文章,语法简单易用 Markdown的 ...

  5. Hibernate的多种关系映射(oto、otm、mtm)

    前提:使用注解映射 一.一对一(夫妻关系表) 两个表:hus1和wife1表,外键为id,各自有名字hname和wname 映射得到两个类:Hus1和Wife1类 Hus1类(主表): package ...

  6. 蓝桥杯 - 带分数 (DFS)

      历届试题 带分数   时间限制:1.0s   内存限制:256.0MB        问题描写叙述 100 能够表示为带分数的形式:100 = 3 + 69258 / 714. 还能够表示为:10 ...

  7. javaweb学习总结(六)——Servlet开发(三) 常见问题疑问

    [1]response.getWriter().write()与out.print()的区别http://blog.csdn.net/javaloveiphone/article/details/81 ...

  8. Server Tomcat v7.0 Server at localhost failed to start.解决办法(图文详解)

    问题描述 Server Tomcat v7.0 Server at localhost failed to start. 解决办法 把你工作空间文件夹下的如下路径打开: <workspace-d ...

  9. utf8 string

    https://github.com/BassLC/idUTF8lib Idiot's UTF-8 Library A very (too much really) simple Utf8 libra ...

  10. 3ds Max做的卡通狗教程

    使用软件::3ds Max 软件下载:http://www.xy3dsmax.com/xiazai.html 全教程完,学完记得交作业.如果本教程对您有所帮助,请推荐给你的朋友.