当前访客身份:游客 [ 登录 | 加入 OSCHINA ]

代码分享

当前位置:
代码分享 » Python  » 配置/脚本/批处理
分享到: 
收藏 +0
1
最近在学python,感觉very强大啊...

随便模仿别人的代码写了个丑陋的蜘蛛,爬去凡客上的T的照片,家里没网络,可以下载下来回家慢慢挑
标签: Python 爬虫

代码片段(1) [全屏查看所有代码]

1. [代码]爬虫     跳至 [1] [全屏预览]

import os
import sys
import re
import urllib

VANCAL_ITEM = re.compile(r'http://vt.vancl.com/item/(\d+).*', re.I)
ITEM_PIC = re.compile(r'(http://images.vancl.com/product/.*?/small/.*?\.jpg)', re.I)

def download(dir, url):

	global VANCAL_ITEM, ITEM_PIC
	
	if not os.path.isdir(dir):
		os.mkdir(dir)
	
	html = urllib.urlopen(url).read()
	items = [item for item in VANCAL_ITEM.findall(html)]
	for idx, item in enumerate(items):
		item_url = 'http://vt.vancl.com/item/' + item + '.html'
		print idx, ": ", item_url

		dl_dir = dir + item + '\\'
		try:
			os.makedirs(dl_dir)
		except:
			pass
		item_html = urllib.urlopen(item_url).read()
		item_pics = [item for item in ITEM_PIC.findall(item_html)]
		for sidx, sitem in enumerate(item_pics):
			tmp = sitem.replace("small", "mid")
			name = tmp.split('/')[-1]
			dl_name = os.path.join(dl_dir, name)
			urllib.urlretrieve(tmp, dl_name)
	return
	
def main():
	dir = 'd:\\img\\'
	ss = 'http://vt.vancl.com/list/women/'
	ed = '/view=1'
	for idx in range(10):
		download(dir, ss + str(idx + 1) + ed)
		
if __name__ == '__main__':
	main()


开源中国-程序员在线工具:Git代码托管 API文档大全(120+) JS在线编辑演示 二维码 更多»

发表评论 回到顶部 网友评论(2)

  • 1楼:时Stone 发表于 2011-05-28 09:07 回复此评论
    支持则个
  • 2楼:hanwke 发表于 2011-12-18 20:49 回复此评论

    呵呵 帮你顶一个哦

开源从代码分享开始 分享代码
思维忒的其它代码 全部(2)...