python实现爬虫统计学校BBS男女比例(二)多线程爬虫

数据分类

正确数据:id、性别、活动时间三者都有

放在这个文件里file1 = 'ruisi\\correct%s-%s.txt' % (startNum, endNum)

数据格式为293001 男 2015-5-1 19:17

  • 没有时间:有id、有性别,无活动时间

放这个文件里file2 = 'ruisi\\errTime%s-%s.txt' % (startNum, endNum)

数据格式为2566 女 notime

  • 用户不存在:该id没有对应的用户

放这个文件里file3 = 'ruisi\\notexist%s-%s.txt' % (startNum, endNum)

数据格式为29005 notexist

  • 未知性别:有id,但是性别从网页上无法得知(经检查,这种情况也没有活动时间)

放这个文件里 file4 = 'ruisi\\unkownsex%s-%s.txt' % (startNum, endNum)

数据格式 221794 unkownsex

  • 网络错误:网断了,或者服务器故障,需要对这些id重新检查

放这个文件里 file5 = 'ruisi\\httperror%s-%s.txt' % (startNum, endNum)

数据格式 271004 httperror

如何不间断得爬虫信息

本项目有一个考虑:是不间断爬取信息,如果因为断网、BBS服务器故障啥的,我的爬虫程序就退出的话。那我们还得从间断的地方继续爬,或者更麻烦的是从头开始爬。

所以,我采取的方法是,如果遇到故障,就把这些异常的id记录下来。等一次遍历之后,才对这些异常的id进行重新爬取性别。

本文系列(一)给出了一个 getInfo(myurl, seWord),通过给定链接和给定正则表达式爬取信息。

这个函数可以用来查看性别的最后活动时间信息。

我们再定义一个安全的爬取函数,不会间断程序运行的,这儿用到try except异常处理。


这儿代码试了两次getInfo(myurl, seWord),如果第2次还是抛出异常了,就把这个id保存在file5里面 
如果能获取到信息,就返回信息

<code class="hljs python has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;">file5 = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'ruisi\\httperror%s-%s.txt'</span> % (startNum, endNum)
<span class="hljs-function" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">def</span> <span class="hljs-title" style="box-sizing: border-box;">safeGet</span><span class="hljs-params" style="color: rgb(102, 0, 102); box-sizing: border-box;">(myid, myurl, seWord)</span>:</span>
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">try</span>:
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">return</span> getInfo(myurl, seWord)
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">except</span>:
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">try</span>:
            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">return</span> getInfo(myurl, seWord)
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">except</span>:
            httperrorfile = open(file5, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'a'</span>)
            info = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'%d %s\n'</span> % (myid, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'httperror'</span>)
            httperrorfile.write(info)
            httperrorfile.close()
            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">return</span> <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'httperror'</span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li></ul>

依次遍历,获取id从[1,300,000]的用户信息

我们定义一个函数,这儿的思路是获取sex和time,如果有sex,进而继续判断是否有time;如果没sex,判断是否这个用户不存在还是性别无法爬取。

其中要考虑到断网或者BBS服务器故障的情况。

<code class="hljs python has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;">url1 = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'http://rs.xidian.edu.cn/home.php?mod=space&uid=%s'</span>
url2 = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'http://rs.xidian.edu.cn/home.php?mod=space&uid=%s&do=profile'</span>
<span class="hljs-function" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">def</span> <span class="hljs-title" style="box-sizing: border-box;">searchWeb</span><span class="hljs-params" style="color: rgb(102, 0, 102); box-sizing: border-box;">(idArr)</span>:</span>
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">for</span> id <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">in</span> idArr:
        sexUrl = url1 % (id) <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">#将%s替换为id</span>
        timeUrl = url2 % (id)
        sex = safeGet(id,sexUrl, sexRe)
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">not</span> sex: <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">#如果sexUrl里面找不到性别,在timeUrl再尝试找一下</span>
            sex = safeGet(id,timeUrl, sexRe)
        time = safeGet(id,timeUrl, timeRe)

        <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">#如果出现了httperror,需要重新爬取</span>
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span> (sex <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">is</span> <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'httperror'</span>) <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">or</span> (time <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">is</span> <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'httperror'</span>) :
            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">pass</span>
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">else</span>:
            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span> sex:
                info = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'%d %s'</span> % (id, sex)
                <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span> time:
                    info = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'%s %s\n'</span> % (info, time)
                    wfile = open(file1, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'a'</span>)
                    wfile.write(info)
                    wfile.close()
                <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">else</span>:
                    info = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'%s %s\n'</span> % (info, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'notime'</span>)
                    errtimefile = open(file2, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'a'</span>)
                    errtimefile.write(info)
                    errtimefile.close()
            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">else</span>:
                <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">#这儿是性别是None,然后确定一下是不是用户不存在</span>
                <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">#断网的时候加上这个,会导致4个重复httperror</span>
                <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">#可能用户的性别我们无法知道,他没有填写</span>
                notexist = safeGet(id,sexUrl, notexistRe)
                <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span> notexist <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">is</span> <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'httperror'</span>:
                    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">pass</span>
                <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">else</span>:
                    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span> notexist:
                        notexistfile = open(file3, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'a'</span>)
                        info = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'%d %s\n'</span> % (id, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'notexist'</span>)
                        notexistfile.write(info)
                        notexistfile.close()
                    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">else</span>:
                        unkownsexfile = open(file4, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'a'</span>)
                        info = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'%d %s\n'</span> % (id, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'unkownsex'</span>)
                        unkownsexfile.write(info)
                        unkownsexfile.close()
</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li><li style="box-sizing: border-box; padding: 0px 5px;">14</li><li style="box-sizing: border-box; padding: 0px 5px;">15</li><li style="box-sizing: border-box; padding: 0px 5px;">16</li><li style="box-sizing: border-box; padding: 0px 5px;">17</li><li style="box-sizing: border-box; padding: 0px 5px;">18</li><li style="box-sizing: border-box; padding: 0px 5px;">19</li><li style="box-sizing: border-box; padding: 0px 5px;">20</li><li style="box-sizing: border-box; padding: 0px 5px;">21</li><li style="box-sizing: border-box; padding: 0px 5px;">22</li><li style="box-sizing: border-box; padding: 0px 5px;">23</li><li style="box-sizing: border-box; padding: 0px 5px;">24</li><li style="box-sizing: border-box; padding: 0px 5px;">25</li><li style="box-sizing: border-box; padding: 0px 5px;">26</li><li style="box-sizing: border-box; padding: 0px 5px;">27</li><li style="box-sizing: border-box; padding: 0px 5px;">28</li><li style="box-sizing: border-box; padding: 0px 5px;">29</li><li style="box-sizing: border-box; padding: 0px 5px;">30</li><li style="box-sizing: border-box; padding: 0px 5px;">31</li><li style="box-sizing: border-box; padding: 0px 5px;">32</li><li style="box-sizing: border-box; padding: 0px 5px;">33</li><li style="box-sizing: border-box; padding: 0px 5px;">34</li><li style="box-sizing: border-box; padding: 0px 5px;">35</li><li style="box-sizing: border-box; padding: 0px 5px;">36</li><li style="box-sizing: border-box; padding: 0px 5px;">37</li><li style="box-sizing: border-box; padding: 0px 5px;">38</li><li style="box-sizing: border-box; padding: 0px 5px;">39</li><li style="box-sizing: border-box; padding: 0px 5px;">40</li><li style="box-sizing: border-box; padding: 0px 5px;">41</li><li style="box-sizing: border-box; padding: 0px 5px;">42</li><li style="box-sizing: border-box; padding: 0px 5px;">43</li><li style="box-sizing: border-box; padding: 0px 5px;">44</li><li style="box-sizing: border-box; padding: 0px 5px;">45</li><li style="box-sizing: border-box; padding: 0px 5px;">46</li></ul>

这儿后期检查发现了一个问题

<code class="hljs applescript has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"> sex = safeGet(<span class="hljs-property" style="box-sizing: border-box;">id</span>,sexUrl, sexRe)
 <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">not</span> sex:
     sex = safeGet(<span class="hljs-property" style="box-sizing: border-box;">id</span>,timeUrl, sexRe)
 <span class="hljs-property" style="box-sizing: border-box;">time</span> = safeGet(<span class="hljs-property" style="box-sizing: border-box;">id</span>,timeUrl, timeRe)</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li></ul>

这个代码如果断网的时候,调用了3次safeGet,每次调用都会往文本里面同一个id写多次httperror

<code class="hljs  has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;">251538 httperror
251538 httperror
251538 httperror
251538 httperror</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li></ul>

多线程爬取信息?

数据统计可以用多线程,因为是独立的多个文本

Popen介绍

使用Popen可以自定义标准输入、标准输出和标准错误输出。我在SAP实习的时候,项目组在linux平台下经常使用Popen,可能是因为可以方便重定向输出。

下面这段代码借鉴了以前项目组的实现方法,Popen可以调用系统cmd命令。下面3个communicate()连在一起表示要等这3个线程都结束。

疑惑? 
试验了一下,必须3个communicate()紧挨着才能保证3个线程同时开启,最后等待3个线程都结束。

<code class="hljs rust has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;">p1=Popen([<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'python'</span>, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'ruisi.py'</span>, <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">str</span>(s0),<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">str</span>(s1)],bufsize=<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">10000</span>, stdout=subprocess.PIPE)

p2=Popen([<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'python'</span>, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'ruisi.py'</span>, <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">str</span>(s1),<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">str</span>(s2)],bufsize=<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">10000</span>, stdout=subprocess.PIPE)

p3=Popen([<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'python'</span>, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'ruisi.py'</span>, <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">str</span>(s2),<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">str</span>(s3)],bufsize=<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">10000</span>, stdout=subprocess.PIPE)

p1.communicate()
p2.communicate()
p3.communicate()</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li></ul>

定义一个单线程的爬虫

用法:python ruisi.py <startNum> <endNum>

这段代码就是爬取[startNum, endNum)信息,输出到相应的文本里。它是一个单线程的程序,若要实现多线程的话,在外部调用它的地方实现多线程。

<code class="hljs python has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"><span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;"># ruisi.py</span>
<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;"># coding=utf-8</span>
<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">import</span> urllib2, re, sys, threading, time,thread

<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;"># myurl as 指定链接</span>
<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;"># seWord as 正则表达式,用unicode表示</span>
<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;"># 返回根据正则表达式匹配的信息或者None</span>
<span class="hljs-function" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">def</span> <span class="hljs-title" style="box-sizing: border-box;">getInfo</span><span class="hljs-params" style="color: rgb(102, 0, 102); box-sizing: border-box;">(myurl, seWord)</span>:</span>
    headers = {
        <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'User-Agent'</span>: <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6'</span>
    }
    req = urllib2.Request(
        url=myurl,
        headers=headers
    )
    time.sleep(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0.3</span>)
    response = urllib2.urlopen(req)
    html = response.read()
    html = unicode(html, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'utf-8'</span>)
    timeMatch = seWord.search(html)
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span> timeMatch:
        s = timeMatch.groups()
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">return</span> s[<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>]
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">else</span>:
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">return</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">None</span>

<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">#尝试两次getInfo()</span>
<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">#第2次失败后,就把这个id标记为httperror</span>
<span class="hljs-function" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">def</span> <span class="hljs-title" style="box-sizing: border-box;">safeGet</span><span class="hljs-params" style="color: rgb(102, 0, 102); box-sizing: border-box;">(myid, myurl, seWord)</span>:</span>
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">try</span>:
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">return</span> getInfo(myurl, seWord)
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">except</span>:
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">try</span>:
            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">return</span> getInfo(myurl, seWord)
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">except</span>:
            httperrorfile = open(file5, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'a'</span>)
            info = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'%d %s\n'</span> % (myid, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'httperror'</span>)
            httperrorfile.write(info)
            httperrorfile.close()
            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">return</span> <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'httperror'</span>


<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">#输出一个 idArr 范围,比如[1,1001)</span>
<span class="hljs-function" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">def</span> <span class="hljs-title" style="box-sizing: border-box;">searchWeb</span><span class="hljs-params" style="color: rgb(102, 0, 102); box-sizing: border-box;">(idArr)</span>:</span>
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">for</span> id <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">in</span> idArr:
        sexUrl = url1 % (id)
        timeUrl = url2 % (id)
        sex = safeGet(id,sexUrl, sexRe)
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">not</span> sex:
            sex = safeGet(id,timeUrl, sexRe)
        time = safeGet(id,timeUrl, timeRe)

        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span> (sex <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">is</span> <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'httperror'</span>) <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">or</span> (time <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">is</span> <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'httperror'</span>) :
            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">pass</span>
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">else</span>:
            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span> sex:
                info = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'%d %s'</span> % (id, sex)
                <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span> time:
                    info = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'%s %s\n'</span> % (info, time)
                    wfile = open(file1, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'a'</span>)
                    wfile.write(info)
                    wfile.close()
                <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">else</span>:
                    info = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'%s %s\n'</span> % (info, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'notime'</span>)
                    errtimefile = open(file2, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'a'</span>)
                    errtimefile.write(info)
                    errtimefile.close()
            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">else</span>:
                notexist = safeGet(id,sexUrl, notexistRe)
                <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span> notexist <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">is</span> <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'httperror'</span>:
                    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">pass</span>
                <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">else</span>:
                    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span> notexist:
                        notexistfile = open(file3, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'a'</span>)
                        info = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'%d %s\n'</span> % (id, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'notexist'</span>)
                        notexistfile.write(info)
                        notexistfile.close()
                    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">else</span>:
                        unkownsexfile = open(file4, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'a'</span>)
                        info = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'%d %s\n'</span> % (id, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'unkownsex'</span>)
                        unkownsexfile.write(info)
                        unkownsexfile.close()

<span class="hljs-function" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">def</span> <span class="hljs-title" style="box-sizing: border-box;">main</span><span class="hljs-params" style="color: rgb(102, 0, 102); box-sizing: border-box;">()</span>:</span>
    reload(sys)
    sys.setdefaultencoding(<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'utf-8'</span>)
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span> len(sys.argv) != <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">3</span>:
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">print</span> <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'usage: python ruisi.py <startNum> <endNum>'</span>
        sys.exit(-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span>)
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">global</span> sexRe,timeRe,notexistRe,url1,url2,file1,file2,file3,file4,startNum,endNum,file5
    startNum=int(sys.argv[<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span>])
    endNum=int(sys.argv[<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2</span>])
    sexRe = re.compile(<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">u'em>\u6027\u522b</em>(.*?)</li'</span>)
    timeRe = re.compile(<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">u'em>\u4e0a\u6b21\u6d3b\u52a8\u65f6\u95f4</em>(.*?)</li'</span>)
    notexistRe = re.compile(<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">u'(p>)\u62b1\u6b49\uff0c\u60a8\u6307\u5b9a\u7684\u7528\u6237\u7a7a\u95f4\u4e0d\u5b58\u5728<'</span>)
    url1 = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'http://rs.xidian.edu.cn/home.php?mod=space&uid=%s'</span>
    url2 = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'http://rs.xidian.edu.cn/home.php?mod=space&uid=%s&do=profile'</span>
    file1 = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'..\\newRuisi\\correct%s-%s.txt'</span> % (startNum, endNum)
    file2 = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'..\\newRuisi\\errTime%s-%s.txt'</span> % (startNum, endNum)
    file3 = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'..\\newRuisi\\notexist%s-%s.txt'</span> % (startNum, endNum)
    file4 = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'..\\newRuisi\\unkownsex%s-%s.txt'</span> % (startNum, endNum)
    file5 = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'..\\newRuisi\\httperror%s-%s.txt'</span> % (startNum, endNum)
    searchWeb(xrange(startNum,endNum))
    <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;"># numThread = 10</span>
    <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;"># searchWeb(xrange(endNum))</span>
    <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;"># total = 0</span>
    <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;"># for i in xrange(numThread):</span>
    <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;"># data = xrange(1+i,endNum,numThread)</span>
    <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">#     total  =+ len(data)</span>
    <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">#     t=threading.Thread(target=searchWeb,args=(data,))</span>
    <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">#     t.start()</span>
    <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;"># print total</span>

main()</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li><li style="box-sizing: border-box; padding: 0px 5px;">14</li><li style="box-sizing: border-box; padding: 0px 5px;">15</li><li style="box-sizing: border-box; padding: 0px 5px;">16</li><li style="box-sizing: border-box; padding: 0px 5px;">17</li><li style="box-sizing: border-box; padding: 0px 5px;">18</li><li style="box-sizing: border-box; padding: 0px 5px;">19</li><li style="box-sizing: border-box; padding: 0px 5px;">20</li><li style="box-sizing: border-box; padding: 0px 5px;">21</li><li style="box-sizing: border-box; padding: 0px 5px;">22</li><li style="box-sizing: border-box; padding: 0px 5px;">23</li><li style="box-sizing: border-box; padding: 0px 5px;">24</li><li style="box-sizing: border-box; padding: 0px 5px;">25</li><li style="box-sizing: border-box; padding: 0px 5px;">26</li><li style="box-sizing: border-box; padding: 0px 5px;">27</li><li style="box-sizing: border-box; padding: 0px 5px;">28</li><li style="box-sizing: border-box; padding: 0px 5px;">29</li><li style="box-sizing: border-box; padding: 0px 5px;">30</li><li style="box-sizing: border-box; padding: 0px 5px;">31</li><li style="box-sizing: border-box; padding: 0px 5px;">32</li><li style="box-sizing: border-box; padding: 0px 5px;">33</li><li style="box-sizing: border-box; padding: 0px 5px;">34</li><li style="box-sizing: border-box; padding: 0px 5px;">35</li><li style="box-sizing: border-box; padding: 0px 5px;">36</li><li style="box-sizing: border-box; padding: 0px 5px;">37</li><li style="box-sizing: border-box; padding: 0px 5px;">38</li><li style="box-sizing: border-box; padding: 0px 5px;">39</li><li style="box-sizing: border-box; padding: 0px 5px;">40</li><li style="box-sizing: border-box; padding: 0px 5px;">41</li><li style="box-sizing: border-box; padding: 0px 5px;">42</li><li style="box-sizing: border-box; padding: 0px 5px;">43</li><li style="box-sizing: border-box; padding: 0px 5px;">44</li><li style="box-sizing: border-box; padding: 0px 5px;">45</li><li style="box-sizing: border-box; padding: 0px 5px;">46</li><li style="box-sizing: border-box; padding: 0px 5px;">47</li><li style="box-sizing: border-box; padding: 0px 5px;">48</li><li style="box-sizing: border-box; padding: 0px 5px;">49</li><li style="box-sizing: border-box; padding: 0px 5px;">50</li><li style="box-sizing: border-box; padding: 0px 5px;">51</li><li style="box-sizing: border-box; padding: 0px 5px;">52</li><li style="box-sizing: border-box; padding: 0px 5px;">53</li><li style="box-sizing: border-box; padding: 0px 5px;">54</li><li style="box-sizing: border-box; padding: 0px 5px;">55</li><li style="box-sizing: border-box; padding: 0px 5px;">56</li><li style="box-sizing: border-box; padding: 0px 5px;">57</li><li style="box-sizing: border-box; padding: 0px 5px;">58</li><li style="box-sizing: border-box; padding: 0px 5px;">59</li><li style="box-sizing: border-box; padding: 0px 5px;">60</li><li style="box-sizing: border-box; padding: 0px 5px;">61</li><li style="box-sizing: border-box; padding: 0px 5px;">62</li><li style="box-sizing: border-box; padding: 0px 5px;">63</li><li style="box-sizing: border-box; padding: 0px 5px;">64</li><li style="box-sizing: border-box; padding: 0px 5px;">65</li><li style="box-sizing: border-box; padding: 0px 5px;">66</li><li style="box-sizing: border-box; padding: 0px 5px;">67</li><li style="box-sizing: border-box; padding: 0px 5px;">68</li><li style="box-sizing: border-box; padding: 0px 5px;">69</li><li style="box-sizing: border-box; padding: 0px 5px;">70</li><li style="box-sizing: border-box; padding: 0px 5px;">71</li><li style="box-sizing: border-box; padding: 0px 5px;">72</li><li style="box-sizing: border-box; padding: 0px 5px;">73</li><li style="box-sizing: border-box; padding: 0px 5px;">74</li><li style="box-sizing: border-box; padding: 0px 5px;">75</li><li style="box-sizing: border-box; padding: 0px 5px;">76</li><li style="box-sizing: border-box; padding: 0px 5px;">77</li><li style="box-sizing: border-box; padding: 0px 5px;">78</li><li style="box-sizing: border-box; padding: 0px 5px;">79</li><li style="box-sizing: border-box; padding: 0px 5px;">80</li><li style="box-sizing: border-box; padding: 0px 5px;">81</li><li style="box-sizing: border-box; padding: 0px 5px;">82</li><li style="box-sizing: border-box; padding: 0px 5px;">83</li><li style="box-sizing: border-box; padding: 0px 5px;">84</li><li style="box-sizing: border-box; padding: 0px 5px;">85</li><li style="box-sizing: border-box; padding: 0px 5px;">86</li><li style="box-sizing: border-box; padding: 0px 5px;">87</li><li style="box-sizing: border-box; padding: 0px 5px;">88</li><li style="box-sizing: border-box; padding: 0px 5px;">89</li><li style="box-sizing: border-box; padding: 0px 5px;">90</li><li style="box-sizing: border-box; padding: 0px 5px;">91</li><li style="box-sizing: border-box; padding: 0px 5px;">92</li><li style="box-sizing: border-box; padding: 0px 5px;">93</li><li style="box-sizing: border-box; padding: 0px 5px;">94</li><li style="box-sizing: border-box; padding: 0px 5px;">95</li><li style="box-sizing: border-box; padding: 0px 5px;">96</li><li style="box-sizing: border-box; padding: 0px 5px;">97</li><li style="box-sizing: border-box; padding: 0px 5px;">98</li><li style="box-sizing: border-box; padding: 0px 5px;">99</li><li style="box-sizing: border-box; padding: 0px 5px;">100</li><li style="box-sizing: border-box; padding: 0px 5px;">101</li><li style="box-sizing: border-box; padding: 0px 5px;">102</li><li style="box-sizing: border-box; padding: 0px 5px;">103</li><li style="box-sizing: border-box; padding: 0px 5px;">104</li><li style="box-sizing: border-box; padding: 0px 5px;">105</li><li style="box-sizing: border-box; padding: 0px 5px;">106</li><li style="box-sizing: border-box; padding: 0px 5px;">107</li><li style="box-sizing: border-box; padding: 0px 5px;">108</li><li style="box-sizing: border-box; padding: 0px 5px;">109</li><li style="box-sizing: border-box; padding: 0px 5px;">110</li><li style="box-sizing: border-box; padding: 0px 5px;">111</li><li style="box-sizing: border-box; padding: 0px 5px;">112</li><li style="box-sizing: border-box; padding: 0px 5px;">113</li><li style="box-sizing: border-box; padding: 0px 5px;">114</li></ul>

多线程爬虫

代码

<code class="hljs perl has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"><span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;"># coding=utf-8</span>
from subprocess import Popen
import subprocess
import threading,<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">time</span>


startn = <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span>
endn = <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">300001</span>
step =<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1000</span>
total = (endn - startn + <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span> ) /step
ISOTIMEFORMAT=<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'%Y-%m-%d %X'</span>

<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">#hardcode 3 threads</span>
<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">#沒有深究3个线程好还是4或者更多个线程好</span>
<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">#输出格式化的年月日时分秒</span>
<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">#输出程序的耗时(以秒为单位)</span>
<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">for</span> i in xrange(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>,total,<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">3</span>):
    startNumber = startn + step * i
    startTime = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">time</span>.clock()

    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">s</span><span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> = startNumber
    s1 = startNumber + step
    s2 = startNumber + step<span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">*2</span>
    s3 = startNumber + step<span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">*3</span>



    p1=Popen([<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'python'</span>, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'ruisi.py'</span>, str(<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">s</span><span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>),str(s1)],bufsize=<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">10000</span>, stdout=subprocess.PIPE)

    p2=Popen([<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'python'</span>, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'ruisi.py'</span>, str(s1),str(s2)],bufsize=<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">10000</span>, stdout=subprocess.PIPE)

    p3=Popen([<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'python'</span>, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'ruisi.py'</span>, str(s2),str(s3)],bufsize=<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">10000</span>, stdout=subprocess.PIPE)

    startftime =<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'[ '</span>+ <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">time</span>.strftime( ISOTIMEFORMAT, <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">time</span>.<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">localtime</span>() ) + <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">' ] '</span>

    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">print</span>  startftime + <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'%s - %s download start... '</span> <span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%(</span><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">s</span><span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>, s1)
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">print</span>  startftime + <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'%s - %s download start... '</span> <span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%(</span>s1, s2)
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">print</span>  startftime + <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'%s - %s download start... '</span> <span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%(</span>s2, s3)

    p1.communicate()
    p2.communicate()
    p3.communicate()

    endftime = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'[ '</span>+ <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">time</span>.strftime( ISOTIMEFORMAT, <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">time</span>.<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">localtime</span>() ) + <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">' ] '</span>
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">print</span> endftime + <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'%s - %s download end !!! '</span> <span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%(</span><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">s</span><span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>, s1)
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">print</span> endftime + <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'%s - %s download end !!! '</span> <span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%(</span>s1, s2)
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">print</span> endftime + <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'%s - %s download end !!! '</span> <span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%(</span>s2, s3)

    endTime = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">time</span>.clock()
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">print</span> <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"cost time "</span> + str(endTime - startTime) + <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">" s"</span>
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">time</span>.<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">sleep</span>(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">5</span>)</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li><li style="box-sizing: border-box; padding: 0px 5px;">14</li><li style="box-sizing: border-box; padding: 0px 5px;">15</li><li style="box-sizing: border-box; padding: 0px 5px;">16</li><li style="box-sizing: border-box; padding: 0px 5px;">17</li><li style="box-sizing: border-box; padding: 0px 5px;">18</li><li style="box-sizing: border-box; padding: 0px 5px;">19</li><li style="box-sizing: border-box; padding: 0px 5px;">20</li><li style="box-sizing: border-box; padding: 0px 5px;">21</li><li style="box-sizing: border-box; padding: 0px 5px;">22</li><li style="box-sizing: border-box; padding: 0px 5px;">23</li><li style="box-sizing: border-box; padding: 0px 5px;">24</li><li style="box-sizing: border-box; padding: 0px 5px;">25</li><li style="box-sizing: border-box; padding: 0px 5px;">26</li><li style="box-sizing: border-box; padding: 0px 5px;">27</li><li style="box-sizing: border-box; padding: 0px 5px;">28</li><li style="box-sizing: border-box; padding: 0px 5px;">29</li><li style="box-sizing: border-box; padding: 0px 5px;">30</li><li style="box-sizing: border-box; padding: 0px 5px;">31</li><li style="box-sizing: border-box; padding: 0px 5px;">32</li><li style="box-sizing: border-box; padding: 0px 5px;">33</li><li style="box-sizing: border-box; padding: 0px 5px;">34</li><li style="box-sizing: border-box; padding: 0px 5px;">35</li><li style="box-sizing: border-box; padding: 0px 5px;">36</li><li style="box-sizing: border-box; padding: 0px 5px;">37</li><li style="box-sizing: border-box; padding: 0px 5px;">38</li><li style="box-sizing: border-box; padding: 0px 5px;">39</li><li style="box-sizing: border-box; padding: 0px 5px;">40</li><li style="box-sizing: border-box; padding: 0px 5px;">41</li><li style="box-sizing: border-box; padding: 0px 5px;">42</li><li style="box-sizing: border-box; padding: 0px 5px;">43</li><li style="box-sizing: border-box; padding: 0px 5px;">44</li><li style="box-sizing: border-box; padding: 0px 5px;">45</li><li style="box-sizing: border-box; padding: 0px 5px;">46</li><li style="box-sizing: border-box; padding: 0px 5px;">47</li><li style="box-sizing: border-box; padding: 0px 5px;">48</li><li style="box-sizing: border-box; padding: 0px 5px;">49</li><li style="box-sizing: border-box; padding: 0px 5px;">50</li><li style="box-sizing: border-box; padding: 0px 5px;">51</li></ul>

这儿是记录时间戳的日志:

<code class="hljs erlang-repl has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"><span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"D:\Program Files\Python27\python.exe"</span> <span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">E</span>:/<span class="hljs-function_or_atom" style="box-sizing: border-box;">pythonProject</span>/<span class="hljs-function_or_atom" style="box-sizing: border-box;">webCrawler</span>/<span class="hljs-function_or_atom" style="box-sizing: border-box;">sum</span>.<span class="hljs-function_or_atom" style="box-sizing: border-box;">py</span>
[ <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2015</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">23</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">31</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">15</span> ] <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
[ <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2015</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">23</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">31</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">15</span> ] <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
[ <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2015</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">23</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">31</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">15</span> ] <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">3001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
[ <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2015</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">23</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">53</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">44</span> ] <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
[ <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2015</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">23</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">53</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">44</span> ] <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
[ <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2015</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">23</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">53</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">44</span> ] <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">3001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1348.99480677</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
[ <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2015</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">23</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">53</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">50</span> ] <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">3001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
[ <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2015</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">23</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">53</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">50</span> ] <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">5001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
[ <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2015</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">23</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">53</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">50</span> ] <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">5001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">6001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
[ <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2015</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">23</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">12</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">16</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">56</span> ] <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">3001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
[ <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2015</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">23</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">12</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">16</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">56</span> ] <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">5001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
[ <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2015</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">23</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">12</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">16</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">56</span> ] <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">5001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">6001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1386.06407734</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
[ <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2015</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">23</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">12</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">17</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">01</span> ] <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">6001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">7001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
[ <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2015</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">23</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">12</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">17</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">01</span> ] <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">7001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">8001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
[ <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2015</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">23</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">12</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">17</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">01</span> ] <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">8001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">9001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li><li style="box-sizing: border-box; padding: 0px 5px;">14</li><li style="box-sizing: border-box; padding: 0px 5px;">15</li><li style="box-sizing: border-box; padding: 0px 5px;">16</li><li style="box-sizing: border-box; padding: 0px 5px;">17</li><li style="box-sizing: border-box; padding: 0px 5px;">18</li><li style="box-sizing: border-box; padding: 0px 5px;">19</li></ul>

上面是多线程的Log记录,从下面可以看出,1000个用户平均需要500s,一个id需要0.5s。500*300/3600 = 41.666666666667小时,大概需要两天的时间。 
我们再试验一次单线程爬虫的耗时,记录如下:

<code class="hljs livecodeserver has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"><span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"D:\Program Files\Python27\python.exe"</span> E:/pythonProject/webCrawler/<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">sum</span>.py
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1001</span> download start... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1001</span> download <span class="hljs-function" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">end</span> !!! </span>
cost <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1583.65911889</span> s
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2001</span> download start... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2001</span> download <span class="hljs-function" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">end</span> !!! </span>
cost <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1342.46874278</span> s
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">3001</span> download start... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">3001</span> download <span class="hljs-function" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">end</span> !!! </span>
cost <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1327.10885725</span> s
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">3001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4001</span> download start... </code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li></ul>

我们发现一次线程爬取1000个用户耗时的时间也需要1500s,而多线程程序是3*1000个用户耗时1500s。

故多线程确实能比单线程省很多时间。

Note: 
getInfo(myurl, seWord)里有time.sleep(0.3)这样一段代码,是为了防止批判访问BBS,而被BBS拒绝访问。这个0.3s对于上文多线程和单线程的统计时间有影响。

最后附上原始的,没有带时间戳的记录。(加上时间戳,可以知道程序什么时候开始爬虫的,以应对线程卡死情况。)

<code class="hljs erlang-repl has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"><span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"D:\Program Files\Python27\python.exe"</span> <span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">E</span>:/<span class="hljs-function_or_atom" style="box-sizing: border-box;">pythonProject</span>/<span class="hljs-function_or_atom" style="box-sizing: border-box;">webCrawler</span>/<span class="hljs-function_or_atom" style="box-sizing: border-box;">sum</span>.<span class="hljs-function_or_atom" style="box-sizing: border-box;">py</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">3001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">3001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1532.74102812</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">3001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">5001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">5001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">6001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">3001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">5001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">5001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">6001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2652.01624951</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">6001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">7001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">7001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">8001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">8001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">9001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">6001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">7001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">7001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">8001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">8001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">9001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1880.61513696</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">9001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">10001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">10001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">12001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">9001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">10001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">10001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">12001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1634.40575553</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">12001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">13001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">13001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">14001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">14001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">15001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">12001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">13001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">13001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">14001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">14001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">15001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1403.62795496</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">15001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">16001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">16001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">17001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">17001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">18001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">15001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">16001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">16001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">17001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">17001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">18001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1271.42177906</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">18001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">19001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">19001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">20001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">20001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">21001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">18001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">19001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">19001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">20001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">20001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">21001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1476.04122024</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">21001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">22001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">22001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">23001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">23001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">24001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">21001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">22001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">22001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">23001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">23001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">24001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1431.37074164</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">24001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">25001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">25001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">26001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">26001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">27001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">24001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">25001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">25001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">26001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">26001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">27001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1411.45186874</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">27001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">28001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">28001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">29001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">29001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">30001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">27001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">28001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">28001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">29001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">29001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">30001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1396.88837788</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">30001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">31001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">31001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">32001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">32001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">33001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">30001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">31001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">31001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">32001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">32001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">33001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1389.01316718</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">33001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">34001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">34001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">35001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">35001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">36001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">33001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">34001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">34001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">35001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">35001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">36001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1318.16040825</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">36001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">37001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">37001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">38001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">38001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">39001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">36001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">37001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">37001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">38001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">38001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">39001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1362.59222822</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">39001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">40001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">40001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">41001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">41001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">42001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">39001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">40001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">40001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">41001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">41001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">42001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1253.62498539</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">42001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">43001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">43001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">44001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">44001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">45001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">42001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">43001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">43001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">44001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">44001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">45001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1313.50461988</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">45001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">46001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">46001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">47001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">47001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">48001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">45001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">46001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">46001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">47001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">47001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">48001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1322.32317331</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">48001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">49001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">49001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">50001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">50001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">51001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">48001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">49001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">49001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">50001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">50001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">51001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1381.58027296</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">51001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">52001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">52001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">53001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">53001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">54001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">51001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">52001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">52001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">53001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">53001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">54001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1357.78699459</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">54001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">55001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">55001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">56001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">56001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">57001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">54001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">55001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">55001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">56001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">56001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">57001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1359.76377246</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">57001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">58001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">58001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">59001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">59001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">60001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">57001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">58001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">58001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">59001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">59001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">60001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1335.47829775</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">60001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">61001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">61001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">62001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">62001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">63001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">60001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">61001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">61001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">62001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">62001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">63001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1354.82727645</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">63001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">64001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">64001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">65001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">65001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">66001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">63001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">64001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">64001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">65001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">65001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">66001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1260.54731607</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">66001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">67001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">67001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">68001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">68001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">69001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">66001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">67001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">67001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">68001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">68001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">69001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1363.58255686</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">69001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">70001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">70001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">71001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">71001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">72001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">69001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">70001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">70001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">71001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">71001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">72001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1354.17163074</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">72001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">73001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">73001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">74001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">74001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">75001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">72001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">73001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">73001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">74001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">74001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">75001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1335.00425259</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">75001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">76001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">76001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">77001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">77001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">78001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">75001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">76001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">76001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">77001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">77001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">78001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1360.44054978</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">78001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">79001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">79001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">80001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">80001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">81001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">78001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">79001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">79001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">80001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">80001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">81001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1369.72662457</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">81001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">82001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">82001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">83001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">83001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">84001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">81001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">82001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">82001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">83001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">83001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">84001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1369.95550676</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">84001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">85001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">85001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">86001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">86001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">87001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">84001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">85001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">85001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">86001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">86001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">87001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">end</span> <span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span><span class="hljs-exclamation_mark" style="box-sizing: border-box;">!</span> 
<span class="hljs-function_or_atom" style="box-sizing: border-box;">cost</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">time</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1482.53886433</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">s</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">87001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">88001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">88001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">89001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... 
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">89001</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">90001</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">download</span> <span class="hljs-function_or_atom" style="box-sizing: border-box;">start</span>... </code>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值