Python爬虫学习记录(1)——百度贴吧图片下载

#!/usr/bin/python
#coding=utf-8
import os
from urllib.request import urlopen
from urllib.request import urlretrieve
import re
def getHtml(url):#获取网页的函数
    page = urlopen(url)
    html = page.read()
    return html

def getImg(html,id,page_num): #获取图片的函数
    reg = r'http:\/\/imgsrc.baidu.com\/forum\/.{70,100}jpg'
    imgre = re.compile(reg)
    html = str(html)
    f = open("/usr/lxp/python_test/getImg_Python/out_" + str(page_num),"w+")
    f.write(html)
    f.close()
    imglist = imgre.findall(html)
    x = 0
    for imgurl in imglist:
        save_name = 'topic_'+ id + '_' + str(page_num) + '_%s.jpg' % x
        print('download' + save_name +' sucessfully from ' + imgurl)
        urlretrieve(imgurl,save_name)
        x+=1
    return imglist

def getAllImg(topic_id):#解析网页按页数下载
    page_num = 1
    html_len=0
    os.system('mkdir topic_' + topic_id)
    while True :
        html = getHtml("http://tieba.baidu.com/p/" + topic_id + '?see_lz=1&pn=' + str(page_num))
        print(str(html_len) + ' ' + str(len(html)))
        if html_len == len(html):
            break
        getImg(html,topic_id,page_num)
        os.system('mv topic_' + topic_id + '*.jpg topic_' + topic_id)
        html_len = len(html)
        page_num = page_num + 1
    return page_num

topic_id = input("topic id:")
getAllImg(topic_id)

</pre><pre name="code" class="python">
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值