这是一个转载,关于python的下载 图片视频

目的:再熟悉下python强大的数据处理能力和python2,3的区别

情景:贴吧上的图片,数据结构庞大的xml,某些国外比较火热的资源分享平台,你喜欢的漫画,想看的电影,只要资源不错,python‘都可以帮你实现查找,连接下载。

原理:竟然放不了图片,感觉51CTO这一类的博客,初心是好的,也是慢慢的变成了不好用的东西了,当一个企业成立起来,他的使命就只是挣钱了。可惜了。

原理:你需要分析下目标网站,你需要的网页地址是?一般都在src="",用正则简单去匹配一下就可以了。如果有点复杂,那么就用专业的工具分析下。

Fiddler或者HTTP_WATCH

针对于python的语言,是很多简单的。这里有一个入门小测试。转载的。http://www.cnblogs.com/fnng/p/3576154.html

我也打算转到cnblogs。

内容:这个小测试主要是三个方面:

1.尝试去建立http请求,主要是用到urllib的requests的urlopen

import re
import urllib.request

def getHtml(url):
	page = urllib.request.urlopen(url)
	html = page.read()
	#html = html.decode(‘utf-8‘)
	return html

2,尝试写个正则来匹配一下src或者你需要的链接在哪?

关于正则,我有话要说 ,可以参考经典书籍<AWK&SED>,然后必须用一个正则测试工具,推荐Regex,好像是个小老虎,一时没找到,在另一个电脑里。

接着转载

import re
import urllib

def getHtml(url):
    page = urllib.urlopen(url)
    html = page.read()
    return html

def getImg(html):
    reg = r‘src="(.+?\.jpg)" pic_ext‘
    imgre = re.compile(reg)
    imglist = re.findall(imgre,html)
    return imglist      
   
html = getHtml("http://tieba.baidu.com/p/2460150866")
print getImg(html)

主要是使用到了   r‘正则‘,这里是有个小问题的,必须要decode一下,也就是html,获取的界面结果,需要html.decode(‘utf-s‘),将string装成unicode

解释:字符串在Python内部的表示是unicode编码,因此,在做编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码(decode)成unicode

3,还是再建立一个连接,下载第二部的资源,存起来就完了,现在想想,还是云技术好啊,我们只是搬运工,何必要下载到本地。最后转载

def getImg(html):
    reg = r‘src="(.+?\.jpg)" pic_ext‘
    imgre = re.compile(reg)
    imglist = re.findall(imgre,html)
    x = 0
    for imgurl in imglist:
        urllib.urlretrieve(imgurl,‘%s.jpg‘ % x)
        x+=1
     return imglist

基本上就结束了。如果对这有兴趣的,可以自己去搜着学习一下,这是个工具语言,相当高效好用。

至于他的python环境,不管是window还是linux都是比较容易搞定的。

如果你想着进一步,可以学着用docker去撞他的环境。python与我同岁。

我还是变成原创吧,以上部分代码来至于大人不华,君子务实。 独立博客:HTTP://WWW.TESTPUB.CN

(网上有关于各种资源的python,比如tum..b..l...r..)

时间: 2024-10-21 23:11:52

这是一个转载,关于python的下载 图片视频的相关文章

用python批量下载图片

一 写爬虫注意事项 网络上有不少有用的资源, 如果需要合理的用爬虫去爬取资源是合法的,但是注意不要越界,前一阶段有个公司因为一个程序员写了个爬虫,导致公司200多个人被抓,所以先进入正题之前了解下什么样的爬虫是违法的: 如果爬虫程序采集到公民的姓名.身份证件号码.通信通讯联系方式.住址.账号密码.财产状况.行踪轨迹等个人信息,并将之用于非法途径的,则肯定构成非法获取公民个人信息的违法行为.除此之外,根据相关规定,对于违反国家有关规定,向他人出售或者提供公民个人信息,情节严重的,窃取或者以其他方法

Python 批量下载图片示例

使用Python find函数和urllib下载图片. #!/usr/bin/env python import time import urllib i = 0 url = ['']*10 name = ['']*10 con = urllib.urlopen('http://www.ithome.com/html/bizhi/164396.htm').read() src = con.find(r'/newsuploadfiles') end = con.find(r'.jpg',src)

一个完整的微信上传图片下载图片实例,把手把教学

步骤一:绑定域名 先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”. 备注:登录后可在“开发者中心”查看对应的接口权限. 步骤二:引入JS文件 在需要调用JS接口的页面引入如下JS文件,(支持https):http://res.wx.qq.com/open/js/jweixin-1.0.0.js 请注意,如果你的页面启用了https,务必引入 https://res.wx.qq.com/open/js/jweixin-1.0.0.js ,否则将无法在iOS9.0以上系

python urlretrieve 下载图片

python 3中urlretrieve方法直接将远程数据下载到本地.为什么不行? 55 import re import urllib.request def getHtml(url): page = urllib.request.urlopen(url) html = page.read() return html def getImg(html): html = html.decode('GBK') reg = r'src="(.*?\.jpg)" width'... 展开 默_

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

一是用微软提供的扩展库win32com来操作IE: win32com可以获得类似js里面的document对象,但貌似是只读的(文档都没找到). 二是用selenium的webdriver: selenium则提供了Chrome,IE,FireFox等的支持,每种浏览器都有execute_script和find_element_by_xx方法,可以方便的执行js脚本(包括修改元素)和读取html里面的元素.不足是selenium只提供对python2.6和2.7的支持. 三是用python自带的

python requests下载图片

# 文件下载方法 from urllib.request import urlretrieve import requests # 第一 urlimage = 'https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tar.xz' urlretrieve(urlimage, "logo.tar.xz") #第二 ir = requests.get(urlimage, stream=True) print (ir.status_code

python直接下载图片到内存

1. 使用requests(推荐) from PIL import Image import requests Image.open(requests.get(url, stream=True).raw) 2. 使用StringIO from PIL import Image from StringIO import StringIO import requests r = requests.get("http://a/b/c") im = Image.open(StringIO(r.

【Python】下载图片

import requests import bs4 import urllib.request import urllib import os hdr = {'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11', 'Accept': 'text/html,application/xhtml+xml,appli

python正则下载图片

import urllib.request import re # 打开图片路径 def open_url(url): #设置请求路径 req = urllib.request.Request(url) #设置请求头 req.add_header("User-Agent",'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.3