`

python简单爬取一个blogs内容

阅读更多
# -*- coding: utf-8 -*-

from urllib2 import urlopen,Request

import urllib

from lxml import *

import lxml.html as HTML

import time

def error(txt):

    with open("../it/error.txt","a") as f:

        f.write(txt + '\n')

def con(url,count=4):

    try:

        req = Request(url)

        req.add_header('Referer','http://www.baidu.com')

        req.add_header('User-Agent','Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)')

        res = urlopen(req,timeout = 20)

        page = res.read()

        res.close()

        #dom = HTML.document_fromstring(page)

        return page

    except Exception,e:

        if count >= 10:

            print e

            error(url)

        else:

            count += 1

            time.sleep(1)

            return con(url,count)

def menu(url):

    page = con(url)

    dom = HTML.document_fromstring(page)

    path = "//h5/a"

    node = dom.xpath(path)

    for n in node:

        dic = {}

        dic['title'] = n.text_content()

        dic['url'] = "http:" + n.get("href")

        if dic['title'] and dic['url']:

            yield dic

def save(title,content):

    with open('../it/'+unicode(title)+'.html','w') as f:

        f.write(content)

def blog():

    prev = menu("http://www.schooltop.net")

    for dic in prev:

        title = dic.get("title",'')

        url = dic.get("url",'')

        page = con(url)

        save(title,page)

        print "saved      ",unicode(title)

 

if __name__ == "__main__":

##    try:

        blog()

##    except Exception,e:

##        print e



方法二:
import urllib2
import re  
arr = ['289','300']
for i in arr:
  content = urllib2.urlopen('http://www.schooltop.net/blogs/'+i).read()
  pattern = re.compile('<div class="article">(.*?)<div class="row t_margin_20">', re.S)
  match = re.search(pattern, content)
  if match:
    print match.group(1)
  else: 
    print 111
分享到:
评论

相关推荐

    Illustrated Guide to Python 3

    Illustrated Guide to Learning Python is designed to bring developers and others who are anxious to learn Python up to speed quickly. Not only does it teach the basics of syntax, but it condenses years...

    一个简易的博客系统blogs.zip

    【博客个人资源】 包含前端、后端、移动开发、操作...Java、Python、Node.js、Spring Boot、Django、Express、MySQL、PostgreSQL、MongoDB、React、Angular、Vue、Bootstrap、Material-UI、Redis、Docker、Kubernetes

    python实战-使用Tkinter构建计算器并打包为可执行文件

    4. 内容参考:​https://data-flair.training/blogs/python-calculator-project/​ 5. 内容介绍:压缩包中dataflair-python-calculator.py为python原文件,dist文件夹中的 dataflair-python-calculator.exe为使用...

    python二级选择什么书-自学Python可以选择哪些入门书籍?.pdf

    10. **Effective Python** - 《Effective Python:编写高质量Python代码的59个有效方法》 Brett Slatkin的著作,提供了优化Python代码的实用建议,帮助写出更高效的Python程序。 除了这些书籍,作者还推荐了以下...

    /Masuit.MyBlogs

    /Masuit.MyBlogs/Masuit.MyBlogs/Masuit.MyBlogs/Masuit.MyBlogs/Masuit.MyBlogs/Masuit.MyBlogs/Masuit.MyBlogs/Masuit.MyBlogs/Masuit.MyBlogs/Masuit.MyBlogs/Masuit.MyBlogs/Masuit.MyBlogs/Masuit.MyBlogs/...

    cn-blogs.py

    使用python爬取博客园文章代码,python 3.8版本,亲测可用 需求分析 爬取博客园的帖子 url = https://www.cnblogs.com/ 源码分析 代码实现 1.根据入口url请求源码 2.提前数据(每篇帖子的ur) 3.根据url进入到...

    python-blogs:Python Software Foundation GSoC博客平台

    Python-GSoC博客平台用于运行GSoC的PSF的博客和管理平台建置状态安装用python 3.7.3测试要安装开发依赖项,请执行以下操作: $ pip install -r requirements.txt要设置设置... 对于重大更改,请先打开一个问题以讨论您

    Spark for Python Developers 无水印pdf 0分

    You'll expand your skills throughout, getting familiarized with the various data sources (Github, Twitter, Meetup, and Blogs), their data structures, and solutions to effectively tackle complexities....

    python简介及应用实例及实例分析.txt

    自1991年首次发布以来,Python已经发展成为一个功能强大且用途广泛的编程工具,被广泛应用于Web开发、数据科学、人工智能等多个领域。 ### Python的应用实例及实例分析 #### 应用实例一:Web开发 Python在Web开发...

    PyPI 官网下载 | django-fluent-blogs-1.3.tar.gz

    标题"PyPI 官网下载 | django-fluent-blogs-1.3.tar.gz"表明我们正在讨论的是一个从Python Package Index (PyPI) 下载的开源项目,具体是“django-fluent-blogs”库的1.3版本。这个库是以.tar.gz格式打包的,这是一...

    myblogs_爬虫_django_

    【描述】"用pythonweb制作简单的个人博客,基于django的个人博客制作" 明确指出项目的目标是创建一个个人博客,使用的是Python的Web开发框架Django。这个博客系统可能是从零开始构建的,旨在展示作者的技术实力,...

    awesome-python-blogs:针对Python开发人员和新手的精选Python博客和新闻通讯精选清单

    这个OpenCV和Python博客由Adrian 撰写。 通过我的OpenCV文章,教程和指南学习OpenCV,Python和计算机视觉。 -Python中心是Python程序员的一站式资源。 - 核心开发新闻和信息 用简单的语言解释了编程概念,并提供了...

    myBlogs:a simple blog grap system | 一个简易的博客抓取系统

    《myBlogs:一个基于PHP实现的简易博客抓取系统》 myBlogs是一个小巧而实用的博客抓取系统,其主要目标是帮助用户轻松获取并整理来自cnblogs平台的内容。该系统采用PHP编程语言进行开发,使得它具有良好的可扩展性...

    Python-datascienceblogs数据科学blog列表

    data-science-blogs-数据科学 blog 列表

    《从零到壹Python图像处理及识别》

    第一部分是图像处理基础知识(共10章):详细介绍了图像处理基础、OpenCV入门、几何图形绘制、算数与逻辑运算、几何变换、量化和采样处理等内容。 第二部分是图像运算和图像增强(共17章):包括图像点运算、灰度...

    blogs-jsp实例

    【博客(Blogs)与JSP技术】 博客(Blogs),全称Web Logs,是一种在线日记或个人出版系统,允许用户发布...通过分析和学习这个实例,你不仅能够学会创建一个简单的博客系统,还能建立起对JSP和Web开发更深入的理解。

    data-science-blogs-数据科学 blog 列表-python

    数据科学博客列表是数据科学家、分析师以及对数据分析感兴趣的人们获取最新资讯、学习资源和行业动态的重要途径。这个名为"data-science-blogs-数据科学 ...所以,这个压缩包是一个宝贵的资源,值得仔细研究和利用。

    中文独立博客列表-python

    在实际操作中,"chinese-independent-blogs-master"可能是一个包含源代码、博客列表数据、README文档等的项目文件夹。源代码可能是Python脚本,用于爬取和整理博客信息;数据文件可能包含了抓取到的博客URL、博主...

    FDW.S BLOG源码_myblogs.zip

    FDW.S BLOG源码_myblogs.zip 是一个包含FDW.S个人博客的源代码压缩包。这个源码可能是一个开源的个人博客系统,用于展示作者的技术分享、生活感悟或者其他感兴趣的主题。通过分析和理解这个源码,我们可以学习到许多...

Global site tag (gtag.js) - Google Analytics