博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python抓取oracle数据,python爬虫,抓取oracle-base上的一些常用脚本
阅读量:4318 次
发布时间:2019-06-06

本文共 1886 字,大约阅读时间需要 6 分钟。

以下利用python实现在http://www.oracle-base.com/dba上抓取上有的数据库常用脚本,时间关系,写的比较粗糙,分享给大家,希望大家一起进步。

# -*- coding: utf-8 -*-

#---------------------------------------

#   程序:抓取http://www.oracle-base.com/dba上的脚本

#   版本:0.1

#   作者:carefree

#   日期:2014-03-12

#   语言:Python 2.7

#   功能:抓取http://www.oracle-base.com/dba上的脚本

#---------------------------------------

import urllib

import urllib2

import cookielib

import re

import string

import os

class GetScript:

# 申明相关的属性

def __init__(self):

self.baseUrl='http://www.oracle-base.com/dba/'

self.initUrl='http://www.oracle-base.com/dba/scripts.php' #数据抓取测试页面

self.results = []    #存储当前的抓取的脚本

self.ls = os.linesep   #行终止符

self.category =''       #类型

self.filename=''        #脚本名称

self.content=''         #脚本内容

#抓取页面上的脚本名称以及类型

def get_data(self):

result = urllib2.urlopen(self.initUrl)   #打开页面

self.deal_data(result.read())

# 处理页面内容

def deal_data(self,myPage):

#获取类似于

result = re.findall('(script[\S]+(\s+)*?.sql")',myPage)

for x in result:

#获取类型以及文件名

a = x[0].find('&')

self.category = x[0][20:a]

self.filename = x[0][x[0].find('=',a+1)+1:-1]

result.remove(x)

self.get_script()

def get_script(self):

url = self.baseUrl+self.category+'/'+self.filename

#获取脚本内容

self.content = urllib2.urlopen(url).read()

#将抓取的结果写入文件

self.write_tofile()

#将抓取的结果写入文件

def write_tofile(self):

fname = self.category +'\\' + self.filename

#fname = self.filename

while True:

if not os.path.exists(self.category):

os.makedirs(r'%s/%s'%(os.getcwd(),self.category))

if os.path.exists(fname):

print "ERROR: file '%s\%s' already existing!" %(os.getcwd(),fname) +''

break

#fname = raw_input('Input the another file name: ')

else:

fobj = open(fname,'w')

fobj.writelines(self.content)

fobj.close()

print 'Have the file is written to '+os.getcwd()+'\\'+fname+'!'

break

#print '数据已经写入'+fname+'文件中,处理完成'

#测试代码

if __name__ == '__main__':

#print os.getcwd()

mySpider = GetScript()

mySpider.get_data()

print 'Already processing is completed!'

转载地址:http://nzgzs.baihongyu.com/

你可能感兴趣的文章
Java并发编程
查看>>
导致“mysql has gone away”的两种情况
查看>>
DTRACE -MYSQL
查看>>
autoScroll不显示滚动条
查看>>
LabVIEW动态添加控件
查看>>
Azure SQL 数据库与新的数据库吞吐量单位
查看>>
VC++2012编程演练数据结构《13》单链表
查看>>
Yii2简单的 yii2-phpexcel导出
查看>>
ubuntu/deepin 下下载wxpython
查看>>
A011 Activiti工作流程开发的一些统一规则和实现原理(完整版)
查看>>
Apache JServ protocol服务 怎么关闭?
查看>>
使用 SQL SERVER PROFILER 监测死锁
查看>>
男人的眼泪是血 很容易就会流完
查看>>
#define 中#和##的作用
查看>>
心情日记
查看>>
20145320\20145319 《信息安全系统设计基础》实验三
查看>>
Python 类
查看>>
oledbException 未指定的错误解决过程
查看>>
Scarlet的字符串不可能这么可爱
查看>>
toastr自身的onclik函数
查看>>