1
# -*- encoding: utf-8 -*-
2
##############################################################################
4
# ETL system- Extract Transfer Load system
5
# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>). All Rights Reserved
8
# This program is free software: you can redistribute it and/or modify
9
# it under the terms of the GNU General Public License as published by
10
# the Free Software Foundation, either version 3 of the License, or
11
# (at your option) any later version.
13
# This program is distributed in the hope that it will be useful,
14
# but WITHOUT ANY WARRANTY; without even the implied warranty of
15
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
# GNU General Public License for more details.
18
# You should have received a copy of the GNU General Public License
19
# along with this program. If not, see <http://www.gnu.org/licenses/>.
21
##############################################################################
24
To provide connectivity with URL Access like http, ftp, https, gopher
26
Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
27
GNU General Public License.
29
from etl.connector import connector
32
class url_connector(connector):
34
This is an ETL connector that is used to provide connectivity URL Access like http, ftp, https, gopher.
36
def __init__(self, uri, bufsize=-1, encoding='utf-8', name='url_connector'):
42
bufsize : Buffer size for reading data.
43
encoding : Encoding format.
44
name : Name of connector.
46
super(url_connector, self).__init__(name)
47
self._type = 'connector.url_connector'
48
self.bufsize = bufsize
49
self.encoding = encoding
54
Opens the specified URL.
56
# TODO : pass encoding in file
57
super(url_connector, self).open()
58
connector = urllib.URLopener().open(self.uri)
59
#self.file.encoding = self.encoding
63
super(url_connector, self).close()
67
res = url_connector(self.uri, self.bufsize, self.encoding, self.name)