python 爬虫的简单示例

最近在学习python,最近将语法学习完毕之后,出于兴趣做了一个简单的爬虫,现在将代码粘贴如下:

#!/usr/bin/python
#conding=utf-8
import re
import urllib
import sys
import os

#获取参数,写入到目录所在的data目录下
times = sys.argv[1]
print times
def getHtml(url):
    page = urllib.urlopen(url)
    html = page.read()
    return html

#验证当前url是否可以访问
def isable2visit(url):
    statusCode =urllib.urlopen(url).getcode()
    if (statusCode == 200):
        return True
    else:
        return False

#创建目录
def createDir(dir):
    if not os.path.exists(dir):
        os.makedirs(dir)
        print "Success to create file " + dir
    return dir

#获取图片保存到本地
def getImg(html,x,times):
    reg = r'src="(.+?\.jpg)" pic_ext'
    imgre = re.compile(reg)
    imglist = re.findall(imgre,html)
    for imgurl in imglist:
        local = dir + os.sep +  str(x) + '.jpg'
        urllib.urlretrieve(imgurl,local)
        x+=1
    return x


urls = raw_input("Enter the preFix of the url:")
if len(urls) == 0:
    urls = "http://tieba.baidu.com/p/41254316"
print urls
x = 0
storeDir = "/home/liyong/python/spider/data/"+str(times)
dir = createDir(storeDir)


for i in range(100):
    url = urls + str(i)
    print "Done %.2f%%" % ((float(i)/100)*100)
    if(isable2visit(url)):
        x = html = getImg(getHtml(url),x,dir)
print "Done 100%" 


爬取结果如下:


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值