Python time.split() Examples

The following are code examples for showing how to use time.split(). They are extracted from open source Python projects. You can vote up the examples you like or vote down the exmaples you don't like. You can also save this page to your account.

Example 1
Project: hostapd-mana   Author: adde88   File: http.py    (license) View Source Project 6 votes vote down vote up
def parse_qs(qs, keep_blank_values=0, strict_parsing=0, unquote=unquote):
    """like cgi.parse_qs, only with custom unquote function"""
    d = {}
    items = [s2 for s1 in qs.split("&") for s2 in s1.split(";")]
    for item in items:
        try:
            k, v = item.split("=", 1)
        except ValueError:
            if strict_parsing:
                raise
            continue
        if v or keep_blank_values:
            k = unquote(k.replace("+", " "))
            v = unquote(v.replace("+", " "))
            if k in d:
                d[k].append(v)
            else:
                d[k] = [v]
    return d 
Example 2
Project: hostapd-mana   Author: adde88   File: http.py    (license) View Source Project 6 votes vote down vote up
def lineReceived(self, line):
        if self.firstLine:
            self.firstLine = 0
            l = line.split(None, 2)
            version = l[0]
            status = l[1]
            try:
                message = l[2]
            except IndexError:
                # sometimes there is no message
                message = ""
            self.handleStatus(version, status, message)
            return
        if line:
            key, val = line.split(':', 1)
            val = val.lstrip()
            self.handleHeader(key, val)
            if key.lower() == 'content-length':
                self.length = int(val)
        else:
            self.__buffer = StringIO()
            self.handleEndHeaders()
            self.setRawMode() 
Example 3
Project: hostapd-mana   Author: adde88   File: http.py    (license) View Source Project 6 votes vote down vote up
def _authorize(self):
        # Authorization, (mostly) per the RFC
        try:
            authh = self.getHeader("Authorization")
            if not authh:
                self.user = self.password = ''
                return
            bas, upw = authh.split()
            if bas.lower() != "basic":
                raise ValueError
            upw = base64.decodestring(upw)
            self.user, self.password = upw.split(':', 1)
        except (binascii.Error, ValueError):
            self.user = self.password = ""
        except:
            log.err()
            self.user = self.password = "" 
Example 4
Project: stockUtils   Author: caiyue   File: stockInfo.py    (license) View Source Project 6 votes vote down vote up
def getMostValueableStockList(self):
        '''????????'''
        page = 1
        cList = []
        while True:
            res = getHtmlFromUrl(mostValueableStockUrl % page)
            if res:page += 1
            companyListObj = getJsonObj(res)
            if companyListObj:
                list =  companyListObj['Results']
                if list and len(list):
                    for item in list:
                        stockInfo = item.split(',')
                        jzcsyl = str(float(stockInfo[5].split('(')[0]) * 100) + '%'
                        fhlrzzl = str(float(stockInfo[3].split('(')[0]) * 100) + '%'
                        orgCount = stockInfo[4].split('(')[0]
                        sz = str(int(float(stockInfo[6])/10000/10000))
                        cinfo = MostValueableCompanyInfo(stockInfo[1],stockInfo[2],jzcsyl,fhlrzzl,orgCount,sz)
                        cList.append(cinfo)
                    if len(list) < pageSize:break
                    #???????????????????????
                    if int(companyListObj['PageCount']) < page:break
                else:break
            else:break
        return cList 
Example 5
Project: sslstrip-hsts-openwrt   Author: adde88   File: http.py    (license) View Source Project 6 votes vote down vote up
def parse_qs(qs, keep_blank_values=0, strict_parsing=0, unquote=unquote):
    """like cgi.parse_qs, only with custom unquote function"""
    d = {}
    items = [s2 for s1 in qs.split("&") for s2 in s1.split(";")]
    for item in items:
        try:
            k, v = item.split("=", 1)
        except ValueError:
            if strict_parsing:
                raise
            continue
        if v or keep_blank_values:
            k = unquote(k.replace("+", " "))
            v = unquote(v.replace("+", " "))
            if k in d:
                d[k].append(v)
            else:
                d[k] = [v]
    return d 
Example 6
Project: sslstrip-hsts-openwrt   Author: adde88   File: http.py    (license) View Source Project 6 votes vote down vote up
def lineReceived(self, line):
        if self.firstLine:
            self.firstLine = 0
            l = line.split(None, 2)
            version = l[0]
            status = l[1]
            try:
                message = l[2]
            except IndexError:
                # sometimes there is no message
                message = ""
            self.handleStatus(version, status, message)
            return
        if line:
            key, val = line.split(':', 1)
            val = val.lstrip()
            self.handleHeader(key, val)
            if key.lower() == 'content-length':
                self.length = int(val)
        else:
            self.__buffer = StringIO()
            self.handleEndHeaders()
            self.setRawMode() 
Example 7
Project: sslstrip-hsts-openwrt   Author: adde88   File: http.py    (license) View Source Project 6 votes vote down vote up
def _authorize(self):
        # Authorization, (mostly) per the RFC
        try:
            authh = self.getHeader("Authorization")
            if not authh:
                self.user = self.password = ''
                return
            bas, upw = authh.split()
            if bas.lower() != "basic":
                raise ValueError
            upw = base64.decodestring(upw)
            self.user, self.password = upw.split(':', 1)
        except (binascii.Error, ValueError):
            self.user = self.password = ""
        except:
            log.err()
            self.user = self.password = "" 
Example 8
Project: RealEstateTelegramBot   Author: PeterZhizhin   File: CianParser.py    (license) View Source Project 6 votes vote down vote up
def parse_time(date, time):
    current_time = datetime.datetime.now(timezone)
    if date == '???????':
        date = current_time.date()
    elif date == '?????':
        date = (current_time - datetime.timedelta(days=1)).date()
    else:
        date = date.split(' ')
        day = int(date[0])
        if len(date) == 3:
            year = int(date[2])
        else:
            year = current_time.year
        month = date[1].lower()
        for i, name in enumerate(months):
            if name.startswith(month):
                month = i + 1
                break
        date = datetime.date(year=year, day=day, month=month)

    time = [int(i) for i in time.split(':')]
    time = datetime.time(hour=time[0], minute=time[1])

    return datetime.datetime.combine(date=date, time=time) 
Example 9
Project: DataMiningCompetitionFirstPrize   Author: lzddzh   File: consume_rank_feature.py    (license) View Source Project 6 votes vote down vote up
def extract_consume_per_person(file_name, consume_dict):
    lines = open(file_name).readlines()
    for line in lines:
        temps = line.strip("\r\n").split("$")
        id = temps[0]
        totol_amount = 0
        active_date_set = set()

        for i in range(1, len(temps)):
            records = temps[i].split(",")
            cate = records[0].strip("\"")
            amount = float(records[4].strip("\""))
            time = records[3].strip("\"")
            date = time.split(" ")[0]
            active_date_set.add(date)
            if cate == "POS??":
                totol_amount += amount
        consume_dict[id] = float(totol_amount) / len(active_date_set) 
Example 10
Project: DataMiningCompetitionFirstPrize   Author: lzddzh   File: consume_rank_feature.py    (license) View Source Project 6 votes vote down vote up
def extract_rank_feature(file_name, final_rank, score_dict, if_train):
    if if_train:
        w = open("../original_data/rank_feature_train.txt", 'w')
    else:
        w = open("../original_data/rank_feature_test.txt", 'w')

    lines = open(file_name).readlines()
    for line in lines:
        if if_train:
            id = line.strip().split(",")[0]
        else:
            id = line.strip()
            print id
        w.write("{")
        w.write('"stuId": ' + id + ", ")

        if score_dict.has_key(id) and final_rank.has_key(id):
            w.write('"rank_in_faculty":' + str(final_rank[id]) + "," + '"rank_score_consume":' + str(
                final_rank[id] * score_dict[id]) + "} \n")
        else:
            w.write(
                '"rank_in_faculty":' + str(final_rank.get(id, -999)) + "," + '"rank_score_consume":' + str(
                    -999) + "} \n")

    w.close() 
Example 11
Project: bat   Author: braunfuss   File: wilber.py    (license) View Source Project 6 votes vote down vote up
def extract_stations(self, page):
        r = re.compile(r'station\(([^)]+)\)')
        stations = []
        for str in r.findall(page):
            toks = str.replace("'",'').replace(',,',',').split(',')
            if toks[0] == 'name': continue
            st = Station( station=toks[0],
                          network=toks[1],
                          dist=float(toks[2]), 
                          azimuth=float(toks[3]), 
                          channels=toks[4:-1],
                          snr=float(toks[-1]) )
            
            stations.append(st)
    
        return stations 
Example 12
Project: bat   Author: braunfuss   File: atool.py    (license) View Source Project 6 votes vote down vote up
def readEvent(EventPath):

    Origin = {}
    logger.info('\033[31m Parsing EventFile \033[0m \n')
    try:
        for i in os.listdir(EventPath):
            if fnmatch.fnmatch(i, '*.origin'):
                evfile = os.path.join(EventPath,i)
        fobj = open(evfile, 'r')
        
        for line in fobj:
            line = str.split(line, '=')
            key  = (line[0].replace('\'', '')).strip()
            value = line[1].replace('\n','').strip()

            Origin[key] = value
    except:
        logger.info('\033[31m File Error Exception \033[0m \n') 

    return Origin 
Example 13
Project: bat   Author: braunfuss   File: atool.py    (license) View Source Project 6 votes vote down vote up
def readConfig(EventPath):
    
    Config = {}
    logger.info('\033[31m Parsing ConfigFile \033[0m \n')
    try:
        for i in os.listdir(EventPath):
            if fnmatch.fnmatch(i, '*.config'):
                evfile = os.path.join(EventPath,i)
        fobj = open(evfile, 'r')
        
        for line in fobj:
            if line[0] != '#' and len(line) > 1:
                line = str.split(line, '=')
                key  = (line[0].replace('\'', '')).strip()
                value = line[1].replace('\n','').strip()

                Config[key] = value

    except:
        logger.info('\033[31m File Error Exception \033[0m \n')

    return Config 
Example 14
Project: zenchmarks   Author: squeaky-pl   File: http.py    (license) View Source Project 6 votes vote down vote up
def parse_qs(qs, keep_blank_values=0, strict_parsing=0):
    """
    Like C{cgi.parse_qs}, but with support for parsing byte strings on Python 3.

    @type qs: C{bytes}
    """
    d = {}
    items = [s2 for s1 in qs.split(b"&") for s2 in s1.split(b";")]
    for item in items:
        try:
            k, v = item.split(b"=", 1)
        except ValueError:
            if strict_parsing:
                raise
            continue
        if v or keep_blank_values:
            k = unquote(k.replace(b"+", b" "))
            v = unquote(v.replace(b"+", b" "))
            if k in d:
                d[k].append(v)
            else:
                d[k] = [v]
    return d 
Example 15
Project: zenchmarks   Author: squeaky-pl   File: http.py    (license) View Source Project 6 votes vote down vote up
def fromChunk(data):
    """
    Convert chunk to string.

    @type data: C{bytes}

    @return: tuple of (result, remaining) - both C{bytes}.

    @raise ValueError: If the given data is not a correctly formatted chunked
        byte string.
    """
    prefix, rest = data.split(b'\r\n', 1)
    length = int(prefix, 16)
    if length < 0:
        raise ValueError("Chunk length must be >= 0, not %d" % (length,))
    if rest[length:length + 2] != b'\r\n':
        raise ValueError("chunk must end with CRLF")
    return rest[:length], rest[length + 2:] 
Example 16
Project: zenchmarks   Author: squeaky-pl   File: http.py    (license) View Source Project 6 votes vote down vote up
def parseContentRange(header):
    """
    Parse a content-range header into (start, end, realLength).

    realLength might be None if real length is not known ('*').
    """
    kind, other = header.strip().split()
    if kind.lower() != "bytes":
        raise ValueError("a range of type %r is not supported")
    startend, realLength = other.split("/")
    start, end = map(int, startend.split("-"))
    if realLength == "*":
        realLength = None
    else:
        realLength = int(realLength)
    return (start, end, realLength) 
Example 17
Project: zenchmarks   Author: squeaky-pl   File: http.py    (license) View Source Project 6 votes vote down vote up
def parseCookies(self):
        """
        Parse cookie headers.

        This method is not intended for users.
        """
        cookieheaders = self.requestHeaders.getRawHeaders(b"cookie")

        if cookieheaders is None:
            return

        for cookietxt in cookieheaders:
            if cookietxt:
                for cook in cookietxt.split(b';'):
                    cook = cook.lstrip()
                    try:
                        k, v = cook.split(b'=', 1)
                        self.received_cookies[k] = v
                    except ValueError:
                        pass 
Example 18
Project: zenchmarks   Author: squeaky-pl   File: http.py    (license) View Source Project 6 votes vote down vote up
def getRequestHostname(self):
        """
        Get the hostname that the user passed in to the request.

        This will either use the Host: header (if it is available) or the
        host we are listening on if the header is unavailable.

        @returns: the requested hostname
        @rtype: C{bytes}
        """
        # XXX This method probably has no unit tests.  I changed it a ton and
        # nothing failed.
        host = self.getHeader(b'host')
        if host:
            return host.split(b':', 1)[0]
        return networkString(self.getHost().host) 
Example 19
Project: zenchmarks   Author: squeaky-pl   File: http.py    (license) View Source Project 6 votes vote down vote up
def _authorize(self):
        # Authorization, (mostly) per the RFC
        try:
            authh = self.getHeader(b"Authorization")
            if not authh:
                self.user = self.password = ''
                return
            bas, upw = authh.split()
            if bas.lower() != b"basic":
                raise ValueError()
            upw = base64.decodestring(upw)
            self.user, self.password = upw.split(b':', 1)
        except (binascii.Error, ValueError):
            self.user = self.password = ""
        except:
            log.err()
            self.user = self.password = "" 
Example 20
Project: crossplatform_iptvplayer   Author: j00zek   File: iptvsubtitles.py    (license) View Source Project 6 votes vote down vote up
def _srtToAtoms(self, srtText):
        subAtoms = []
        srtText = srtText.replace('\r\n', '\n').split('\n\n')
        
        line = 0
        for idx in range(len(srtText)):
            line += 1
            st = srtText[idx].split('\n')
            #printDBG("++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++")
            #printDBG(st)
            #printDBG("++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++")
            if len(st)>=2:
                try:
                    try:
                        tmp = int(st[0].strip())
                        i = 1
                    except Exception:
                        if '' == st[0]: i = 1
                        else: i = 0
                    if len(st)<(i+2): continue
                    split = st[i].split(' --> ')
                    subAtoms.append( { 'start':self._srtTc2ms(split[0].strip()), 'end':self._srtTc2ms(split[1].strip()), 'text':self._srtClearText('\n'.join(j for j in st[i+1:len(st)])) } )
                except Exception:
                    printExc("Line number [%d]" % line)
        return subAtoms 
Example 21
Project: netmiko_tools   Author: ktbyers   File: test_netmiko_grep.py    (Apache License 2.0) View Source Project 5 votes vote down vote up
def test_use_cache():
    """With cached files this should come back in under a second"""
    # Generate cached files
    cmd_list = [NETMIKO_GREP] + ['interface', 'all']
    subprocess_handler(cmd_list)
    cmd_list = [NETMIKO_GREP] + ['--use-cache', '--display-runtime', 'interface', 'all']
    (output, std_err) = subprocess_handler(cmd_list)
    match = re.search(r"Total time: (0:.*)", output)
    time = match.group(1)
    _, _, seconds = time.split(":")
    seconds = float(seconds)
    assert seconds <= 1
    assert 'pynet_rtr1.txt:interface FastEthernet0' in output 
Example 22
Project: netmiko_tools   Author: ktbyers   File: test_netmiko_grep.py    (Apache License 2.0) View Source Project 5 votes vote down vote up
def test_display_failed():
    """Verify failed devices are showing"""
    cmd_list = [NETMIKO_GREP] + ['interface', 'all']
    (output, std_err) = subprocess_handler(cmd_list)
    assert "Failed devices" in output
    failed_devices = output.split("Failed devices:")[1]
    failed_devices = failed_devices.strip().split("\n")
    failed_devices = [x.strip() for x in failed_devices]
    assert len(failed_devices) == 2
    assert "bad_device" in failed_devices
    assert "bad_port" in failed_devices 
Example 23
Project: hostapd-mana   Author: adde88   File: http.py    (license) View Source Project 5 votes vote down vote up
def fromChunk(data):
    """Convert chunk to string.

    @returns: tuple (result, remaining), may raise ValueError.
    """
    prefix, rest = data.split('\r\n', 1)
    length = int(prefix, 16)
    if length < 0:
        raise ValueError("Chunk length must be >= 0, not %d" % (length,))
    if not rest[length:length + 2] == '\r\n':
        raise ValueError, "chunk must end with CRLF"
    return rest[:length], rest[length + 2:] 
Example 24
Project: hostapd-mana   Author: adde88   File: http.py    (license) View Source Project 5 votes vote down vote up
def parseContentRange(header):
    """Parse a content-range header into (start, end, realLength).

    realLength might be None if real length is not known ('*').
    """
    kind, other = header.strip().split()
    if kind.lower() != "bytes":
        raise ValueError, "a range of type %r is not supported"
    startend, realLength = other.split("/")
    start, end = map(int, startend.split("-"))
    if realLength == "*":
        realLength = None
    else:
        realLength = int(realLength)
    return (start, end, realLength) 
Example 25
Project: hostapd-mana   Author: adde88   File: http.py    (license) View Source Project 5 votes vote down vote up
def setLastModified(self, when):
        """Set the X{Last-Modified} time for the response to this request.

        If I am called more than once, I ignore attempts to set
        Last-Modified earlier, only replacing the Last-Modified time
        if it is to a later value.

        If I am a conditional request, I may modify my response code
        to L{NOT_MODIFIED} if appropriate for the time given.

        @param when: The last time the resource being returned was
            modified, in seconds since the epoch.
        @type when: number
        @return: If I am a X{If-Modified-Since} conditional request and
            the time given is not newer than the condition, I return
            L{http.CACHED<CACHED>} to indicate that you should write no
            body.  Otherwise, I return a false value.
        """
        # time.time() may be a float, but the HTTP-date strings are
        # only good for whole seconds.
        when = long(math.ceil(when))
        if (not self.lastModified) or (self.lastModified < when):
            self.lastModified = when

        modified_since = self.getHeader('if-modified-since')
        if modified_since:
            modified_since = stringToDatetime(modified_since.split(';', 1)[0])
            if modified_since >= when:
                self.setResponseCode(NOT_MODIFIED)
                return CACHED
        return None 
Example 26
Project: hostapd-mana   Author: adde88   File: http.py    (license) View Source Project 5 votes vote down vote up
def setETag(self, etag):
        """Set an X{entity tag} for the outgoing response.

        That's \"entity tag\" as in the HTTP/1.1 X{ETag} header, \"used
        for comparing two or more entities from the same requested
        resource.\"

        If I am a conditional request, I may modify my response code
        to L{NOT_MODIFIED} or L{PRECONDITION_FAILED}, if appropriate
        for the tag given.

        @param etag: The entity tag for the resource being returned.
        @type etag: string
        @return: If I am a X{If-None-Match} conditional request and
            the tag matches one in the request, I return
            L{http.CACHED<CACHED>} to indicate that you should write
            no body.  Otherwise, I return a false value.
        """
        if etag:
            self.etag = etag

        tags = self.getHeader("if-none-match")
        if tags:
            tags = tags.split()
            if (etag in tags) or ('*' in tags):
                self.setResponseCode(((self.method in ("HEAD", "GET"))
                                      and NOT_MODIFIED)
                                     or PRECONDITION_FAILED)
                return CACHED
        return None 
Example 27
Project: hostapd-mana   Author: adde88   File: http.py    (license) View Source Project 5 votes vote down vote up
def getRequestHostname(self):
        """Get the hostname that the user passed in to the request.

        This will either use the Host: header (if it is available) or the
        host we are listening on if the header is unavailable.
        """
        return (self.getHeader('host') or
                socket.gethostbyaddr(self.getHost()[1])[0]
                ).split(':')[0] 
Example 28
Project: hostapd-mana   Author: adde88   File: http.py    (license) View Source Project 5 votes vote down vote up
def headerReceived(self, line):
        """Do pre-processing (for content-length) and store this header away.
        """
        header, data = line.split(':', 1)
        header = header.lower()
        data = data.strip()
        if header == 'content-length':
            self.length = int(data)
        reqHeaders = self.requests[-1].received_headers
        reqHeaders[header] = data
        if len(reqHeaders) > self.maxHeaders:
            self.transport.write("HTTP/1.1 400 Bad Request\r\n\r\n")
            self.transport.loseConnection() 
Example 29
Project: hostapd-mana   Author: adde88   File: http.py    (license) View Source Project 5 votes vote down vote up
def checkPersistence(self, request, version):
        """Check if the channel should close or not."""
        connection = request.getHeader('connection')
        if connection:
            tokens = map(str.lower, connection.split(' '))
        else:
            tokens = []

        # HTTP 1.0 persistent connection support is currently disabled,
        # since we need a way to disable pipelining. HTTP 1.0 can't do
        # pipelining since we can't know in advance if we'll have a
        # content-length header, if we don't have the header we need to close the
        # connection. In HTTP 1.1 this is not an issue since we use chunked
        # encoding if content-length is not available.

        #if version == "HTTP/1.0":
        #    if 'keep-alive' in tokens:
        #        request.setHeader('connection', 'Keep-Alive')
        #        return 1
        #    else:
        #        return 0
        if version == "HTTP/1.1":
            if 'close' in tokens:
                request.setHeader('connection', 'close')
                return 0
            else:
                return 1
        else:
            return 0 
Example 30
Project: stockUtils   Author: caiyue   File: stockInfo.py    (license) View Source Project 5 votes vote down vote up
def getJsonObj(obj):
    if not obj:return None
    if hasHTML(obj):return None
    #"var moJuuzHq="{"Results":["2,300672,???,?","2,300676,????,?","1,603612,????,?","1,603707,????,?","2,002888,????,?","2,300678,????,?","2,002889,????,?","1,603860,????,?","2,300685,????,?","2,300687,????,?","1,603880,????,?","2,300689,????,?","1,603602,????,?","2,300688,????,?","1,603721,????,?","2,300691,????,?","1,601326,????,?","1,603776,???,?","2,002892,???,?","1,603129,????,?","1,603557,????,?"],"AllCount":"21","PageCount":"1","AtPage":"1","PageSize":"40","ErrMsg":"","UpdateTime":"2017/8/19 13:37:03","TimeOut":"3ms"}"
    # newobj = obj.split('=')[1]  #//???????= ??
    # return  simplejson.loads(newobj)
    newobj = "{" + obj.split('={')[1]
    return simplejson.loads(newobj) 
Example 31
Project: stockUtils   Author: caiyue   File: stockInfo.py    (license) View Source Project 5 votes vote down vote up
def getJsonObj2(obj):
    if not obj: return None
    if hasHTML(obj): return None
    partern = re.compile("data:.*?\"]")
    list = re.findall(partern, obj)
    if list and len(list) > 0:
        s = list[0]
        sepString = s.split(':')[1]
        return simplejson.loads(sepString)
    else:
        return None 
Example 32
Project: stockUtils   Author: caiyue   File: stockInfo.py    (license) View Source Project 5 votes vote down vote up
def getJsonObj3(obj):
    if not obj: return None
    if hasHTML(obj): return None
    partern = re.compile("data:.*?\"]")
    list = re.findall(partern, obj)
    if list and len(list) > 0:
        s = list[0]
        sepString = s.split(':[')[1]
        return simplejson.loads('[' + sepString)
    else:
        return None 
Example 33
Project: stockUtils   Author: caiyue   File: stockInfo.py    (license) View Source Project 5 votes vote down vote up
def getJsonObj4(obj):
    if not obj: return None
    if hasHTML(obj): return None
    partern = re.compile("rank:.*?\"]")
    list = re.findall(partern, obj)
    if list and len(list) > 0:
        s = list[0]
        sepString = s.split(':[')[1]
        return simplejson.loads('[' + sepString)
    else:
        return None 
Example 34
Project: stockUtils   Author: caiyue   File: stockInfo.py    (license) View Source Project 5 votes vote down vote up
def getJsonObj5(obj):
    if not obj: return None
    if hasHTML(obj): return None
    partern = re.compile("\"Value\":.*?\"]")
    list = re.findall(partern, obj)
    if list and len(list) > 0:
        s = list[0]
        sepString = s.split(':[')[1]
        return simplejson.loads('[' + sepString)
    else:
        return None 
Example 35
Project: stockUtils   Author: caiyue   File: stockInfo.py    (license) View Source Project 5 votes vote down vote up
def getThreeDaysMaxStockList(self):
        '''???????'''
        res = getHtmlFromUrl(threeDaysMaxPriceUrl)
        companyListObj = getJsonObj(res)
        if companyListObj:
            list =  companyListObj['Results']
            cList = []
            if list and len(list):
                for item in list:
                    stockInfo = item.split(',')
                    cinfo = CompanyInfo(stockInfo[1],stockInfo[2])
                    cList.append(cinfo)
                return cList

        return  None 
Example 36
Project: stockUtils   Author: caiyue   File: stockInfo.py    (license) View Source Project 5 votes vote down vote up
def getFiveDaysMaxStockList(self):
        '''??5????'''
        res = getHtmlFromUrl(fiveDaysMaxPriceUrl)
        companyListObj = getJsonObj(res)
        if companyListObj:
            list =  companyListObj['Results']
            cList = []
            if list and len(list):
                for item in list:
                    stockInfo = item.split(',')
                    cinfo = CompanyInfo(stockInfo[1],stockInfo[2])
                    cList.append(cinfo)
                return cList
        return  None 
Example 37
Project: stockUtils   Author: caiyue   File: stockInfo.py    (license) View Source Project 5 votes vote down vote up
def getRcommandRankList(self):
        '''????????'''
        res = getHtmlFromUrl(reommendRankUrl)
        companyListObj = getJsonObj(res)
        if companyListObj:
            list = companyListObj['data']
            cList = []
            if list and len(list):
                for item in list:
                    li = item.split(',')
                    info = CompanyRecommandRankInfo(li[1],
                        li[2],li[5],li[6], li[7])
                    cList.append(info)
                return cList
        return None 
Example 38
Project: stockUtils   Author: caiyue   File: stockInfo.py    (license) View Source Project 5 votes vote down vote up
def getStockNameFromCode(self,code):
        res = getHtmlFromUrl(companyNameUrl % code,utf8coding=True)
        pa = re.compile('=.*?;')
        li = re.findall(pa,res)
        if li and len(li):
            s = li[0]
            ret = (s[1:-1]).split(',')
            if ret and len(ret):
                return ret[4]
        else:
            return None 
Example 39
Project: stockUtils   Author: caiyue   File: stockInfo.py    (license) View Source Project 5 votes vote down vote up
def getGoodFundList(self):
        fl = []
        res = getHtmlFromUrl(goodFundUrl)
        fundList = getJsonObj7(res)
        if fundList:
            for item in fundList['datas']:
                fundArray = item.split(',')
                m = FundDetailModel(fundArray[0],fundArray[1],fundArray[3], fundArray[5],fundArray[6],fundArray[7],fundArray[8],fundArray[4],fundArray[11])
                fl.append(m)
        return fl 
Example 40
Project: stockUtils   Author: caiyue   File: stockInfo.py    (license) View Source Project 5 votes vote down vote up
def getStockPriceEachMonth(self,code,onlyYears=False):
        '''??????'''
        res = getHtmlFromUrl(companyStockPriceEachMonth % (code+getMarketId(code)))
        if not res: return None
        if hasHTML(res): return None
        partern = re.compile("\({\"name\":.*?}\)")
        rel = re.findall(partern, res)
        mList = []
        if rel and len(rel) > 0:
            s = rel[0]
            m = simplejson.loads(s[1:-1])
            if m:
                plist =  m['data']
                if plist and len(plist):
                    for i in plist:
                        parray = i.split(',')
                        time = parray[0]
                        if onlyYears:
                            if time and getFloatFromString(time.split('-')[1]) == 12:
                                pmodel = StockEachMonthInfo(code,m['name'],parray[0],parray[1],parray[2],parray[3],parray[4])
                                mList.append(pmodel)
                            else:continue
                        else:
                            pmodel = StockEachMonthInfo(code, m['name'], parray[0], parray[1], parray[2], parray[3],parray[4])
                            mList.append(pmodel)
        else:
            return None
        if mList and len(mList) > 0:
            return mList
        else:return None 
Example 41
Project: stockUtils   Author: caiyue   File: stockInfo.py    (license) View Source Project 5 votes vote down vote up
def getWeekKLineForCode(self,code):
        dataList = []
        url = weekKLineUrl % (code + getMarketId(code))
        res = getHtmlFromUrl(url)
        if not res:return None
        obj = getJsonObj6(res)
        if not obj:return None
        priceList = obj['data']
        for data in priceList:
            dList = data.split(',')
            if len(dList) < 8:continue
            d = CompanyKLineDetailDataList(dList[0],dList[1],dList[2],dList[3],dList[4],dList[5],dList[6],dList[7])
            dataList.append(d)
        detail = CompanyKLineDataDetail(obj['code'],obj['name'],dataList)
        return detail 
Example 42
Project: PythonBasicDemo   Author: actanble   File: Demo0828.py    (license) View Source Project 5 votes vote down vote up
def get_year(time):
    year = time.split('-')[0] 
    return int(year)

# ????????????2010???????[????????????????] 
Example 43
Project: sslstrip-hsts-openwrt   Author: adde88   File: http.py    (license) View Source Project 5 votes vote down vote up
def fromChunk(data):
    """Convert chunk to string.

    @returns: tuple (result, remaining), may raise ValueError.
    """
    prefix, rest = data.split('\r\n', 1)
    length = int(prefix, 16)
    if length < 0:
        raise ValueError("Chunk length must be >= 0, not %d" % (length,))
    if not rest[length:length + 2] == '\r\n':
        raise ValueError, "chunk must end with CRLF"
    return rest[:length], rest[length + 2:] 
Example 44
Project: sslstrip-hsts-openwrt   Author: adde88   File: http.py    (license) View Source Project 5 votes vote down vote up
def parseContentRange(header):
    """Parse a content-range header into (start, end, realLength).

    realLength might be None if real length is not known ('*').
    """
    kind, other = header.strip().split()
    if kind.lower() != "bytes":
        raise ValueError, "a range of type %r is not supported"
    startend, realLength = other.split("/")
    start, end = map(int, startend.split("-"))
    if realLength == "*":
        realLength = None
    else:
        realLength = int(realLength)
    return (start, end, realLength) 
Example 45
Project: sslstrip-hsts-openwrt   Author: adde88   File: http.py    (license) View Source Project 5 votes vote down vote up
def setLastModified(self, when):
        """Set the X{Last-Modified} time for the response to this request.

        If I am called more than once, I ignore attempts to set
        Last-Modified earlier, only replacing the Last-Modified time
        if it is to a later value.

        If I am a conditional request, I may modify my response code
        to L{NOT_MODIFIED} if appropriate for the time given.

        @param when: The last time the resource being returned was
            modified, in seconds since the epoch.
        @type when: number
        @return: If I am a X{If-Modified-Since} conditional request and
            the time given is not newer than the condition, I return
            L{http.CACHED<CACHED>} to indicate that you should write no
            body.  Otherwise, I return a false value.
        """
        # time.time() may be a float, but the HTTP-date strings are
        # only good for whole seconds.
        when = long(math.ceil(when))
        if (not self.lastModified) or (self.lastModified < when):
            self.lastModified = when

        modified_since = self.getHeader('if-modified-since')
        if modified_since:
            modified_since = stringToDatetime(modified_since.split(';', 1)[0])
            if modified_since >= when:
                self.setResponseCode(NOT_MODIFIED)
                return CACHED
        return None 
Example 46
Project: sslstrip-hsts-openwrt   Author: adde88   File: http.py    (license) View Source Project 5 votes vote down vote up
def setETag(self, etag):
        """Set an X{entity tag} for the outgoing response.

        That's \"entity tag\" as in the HTTP/1.1 X{ETag} header, \"used
        for comparing two or more entities from the same requested
        resource.\"

        If I am a conditional request, I may modify my response code
        to L{NOT_MODIFIED} or L{PRECONDITION_FAILED}, if appropriate
        for the tag given.

        @param etag: The entity tag for the resource being returned.
        @type etag: string
        @return: If I am a X{If-None-Match} conditional request and
            the tag matches one in the request, I return
            L{http.CACHED<CACHED>} to indicate that you should write
            no body.  Otherwise, I return a false value.
        """
        if etag:
            self.etag = etag

        tags = self.getHeader("if-none-match")
        if tags:
            tags = tags.split()
            if (etag in tags) or ('*' in tags):
                self.setResponseCode(((self.method in ("HEAD", "GET"))
                                      and NOT_MODIFIED)
                                     or PRECONDITION_FAILED)
                return CACHED
        return None 
Example 47
Project: sslstrip-hsts-openwrt   Author: adde88   File: http.py    (license) View Source Project 5 votes vote down vote up
def getRequestHostname(self):
        """Get the hostname that the user passed in to the request.

        This will either use the Host: header (if it is available) or the
        host we are listening on if the header is unavailable.
        """
        return (self.getHeader('host') or
                socket.gethostbyaddr(self.getHost()[1])[0]
                ).split(':')[0] 
Example 48
Project: sslstrip-hsts-openwrt   Author: adde88   File: http.py    (license) View Source Project 5 votes vote down vote up
def headerReceived(self, line):
        """Do pre-processing (for content-length) and store this header away.
        """
        header, data = line.split(':', 1)
        header = header.lower()
        data = data.strip()
        if header == 'content-length':
            self.length = int(data)
        reqHeaders = self.requests[-1].received_headers
        reqHeaders[header] = data
        if len(reqHeaders) > self.maxHeaders:
            self.transport.write("HTTP/1.1 400 Bad Request\r\n\r\n")
            self.transport.loseConnection() 
Example 49
Project: sslstrip-hsts-openwrt   Author: adde88   File: http.py    (license) View Source Project 5 votes vote down vote up
def checkPersistence(self, request, version):
        """Check if the channel should close or not."""
        connection = request.getHeader('connection')
        if connection:
            tokens = map(str.lower, connection.split(' '))
        else:
            tokens = []

        # HTTP 1.0 persistent connection support is currently disabled,
        # since we need a way to disable pipelining. HTTP 1.0 can't do
        # pipelining since we can't know in advance if we'll have a
        # content-length header, if we don't have the header we need to close the
        # connection. In HTTP 1.1 this is not an issue since we use chunked
        # encoding if content-length is not available.

        #if version == "HTTP/1.0":
        #    if 'keep-alive' in tokens:
        #        request.setHeader('connection', 'Keep-Alive')
        #        return 1
        #    else:
        #        return 0
        if version == "HTTP/1.1":
            if 'close' in tokens:
                request.setHeader('connection', 'close')
                return 0
            else:
                return 1
        else:
            return 0 
Example 50
Project: RealEstateTelegramBot   Author: PeterZhizhin   File: CianParser.py    (license) View Source Project 5 votes vote down vote up
def fix_text(text):
    if text is None:
        return ''
    if hasattr(text, 'text'):
        text = text.text
    return ' '.join(text.split())