filename = path + res.group()
#f = file(filename, 'r+')
#f = open(filename, 'r+')
f = file(filename, 'wb')
#f = open(filename, 'wb')
f.write(content)
f.flush()
f.close()
文件权限一定要对啊。不然爬出来的全身马赛克和不能看。
文件权限:
模式 | 描述 |
---|---|
r | 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。 |
rb | 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式. |
r+ | 打开一个文件用于读写。文件指针将会放在文件的开头. |
rb+ | 以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。 |
w | 打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 |
wb | 以二进制格式打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 |
w+ | 打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 |
wb+ | 以二进制格式打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 |
a | 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。 |
ab | 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。 |
a+ | 打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。 |
ab+ | 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写. |
看到CSDN支持markdown了,顺带体验下。
模式 | 描述 |
---|---|
此处实现方法利用 CSDN-markdown 内嵌 html 语言的优势 | Hotpink |
借助 table, tr, td 等表格标签的 bgcolor 属性实现背景色设置 | AntiqueWhite |
颜色表 http://blog.csdn.net/thither_shore/article/details/52328313
# -*- coding: utf-8 -*-
'''
@Copyright © 2017 sanbo Inc. All rights reserved.
@Description: 下载美女图片,大图不要缩略图{调整代码结构}
@Version: 1.0
@Create: 2017年1月2日 上午3:17:31
@Author: sanbo
'''
from bs4 import BeautifulSoup
import urllib2
import os.path
'''
解析高清地址,并且去下载
'''
def process(url):
response = urllib2.urlopen(url)
html = response.read()
soup1 = BeautifulSoup(html, "lxml")
someData = soup1.select("div.pic-image img")
allUrls = []
for some in someData:
tempUrl = some['src']
if tempUrl not in allUrls:
download(tempUrl)
'''
增加去重,增加解析大图片详情地址
'''
def getUrls(n):
url = 'http://www.4j4j.cn/beauty/tag_3_' + str(n) + '.html'
response = urllib2.urlopen(url)
html = response.read()
soup1 = BeautifulSoup(html, "lxml")
someData = soup1.select("div.i-list li a")
allUrls = []
for some in someData:
tempUrl = some['href']
if "javascript" not in tempUrl:
if tempUrl not in allUrls:
allUrls.append(tempUrl);
return allUrls
def download(url):
global number
number += 1
path = 'D:/girls/'
#如果没有文件夹则创建
if not os.path.exists(path):
#貌似linux 是 os.path.mkdir(path)
#os.mkdir(path)
os.mkdir(path)
#content = urllib2.urlopen(url).read()
header = {
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.114 Safari/537.36',
'Cookie': 'AspxAutoDetectCookieSupport=1',
}
request = urllib2.Request(url, None, header)
content = urllib2.urlopen(request).read()
filename = path + str(number) + '.jpg'
print 'download [' + filename + ']===>' + url
f = open(filename, 'wb') #这种模式可以正常下载图片
f.write(content)
f.flush()
f.close()
if __name__ == '__main__':
number = 1
for i in range(75):
urls = getUrls(i)
for u in range(len(urls)):
process(urls[u])