码迷,mamicode.com
首页 > 编程语言 > 详细

python 自动下载网站相关附件

时间:2015-07-09 22:51:42      阅读:203      评论:0      收藏:0      [点我收藏+]

标签:python autoweb download urllib

论坛里有人问如何写个简单的爬虫. 要求如下:


每天的最新文章里面的附件

如何做到

定时下载


#看了一下这个网站, 还好. 好久没折腾过 urllib什么的, 然后写了一个, 测试可以.

在正则匹配时, 建议把数据的编码方式转为脚本编码方式一致.


脚本如下:

#!/usr/bin/env python
#-*- coding:utf-8 -*-

import urllib
import re

url = "http://www.bjjy.gov.cn"

def get_html_data(u):
    h = urllib.urlopen(u).read()
    t = ""
    for i in h.split("\n"):
        try:
            t += "\n" + i.decode(‘gbk‘).encode(‘utf-8‘)
        except:
            pass
    return t
    
def get_link(data):
    d, link = re.findall(r‘最新文章标题开始(.*)最新文章标题结束‘, data, re.S), []
    if len(d):
        s = re.findall(r‘<A HREF="([^"].*)" TARGET="_blank"‘, d[0], re.I)
        if len(s):
            for i in s:
                link.append(i)
    return link

if __name__ == "__main__":
    html = get_html_data(url)
    f_link = get_link(html)
    for i in f_link:
        tmp_data = get_html_data(url + i)
        tmp_link = re.findall(r‘<a href="([^"].*)"><span style‘,tmp_data, re.I)
        if len(tmp_link):
            for j in tmp_link:
                urllib.urlretrieve(url+j, (url+j).split("/")[-1])



上面要匹配 最新文章 那个地方, 之前没有把数据转码,就是不行.


以上脚本加个定时任务OK.

python 自动下载网站相关附件

标签:python autoweb download urllib

原文地址:http://abian.blog.51cto.com/751059/1672622

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!