<code>#!/usr/bin/env python</code>
<code>#coding:utf-8</code>
<code>def</code> <code>open_file(file_name):</code>
<code> </code><code>res</code><code>=</code><code>{}</code>
<code> </code><code>with </code><code>open</code><code>(file_name) as f:</code>
<code> </code><code>for</code> <code>line </code><code>in</code> <code>f:</code>
<code> </code><code>tmp</code><code>=</code><code>line.split(</code><code>' '</code><code>)</code>
<code># print tmp</code>
<code> </code><code>ip,url</code><code>=</code><code>tmp[</code><code>0</code><code>],tmp[</code><code>6</code><code>]</code>
<code># print ip,url 以元組的形式存到清單中</code>
<code> </code><code>res[(ip,url)]</code><code>=</code><code>res.get((ip,url),</code><code>0</code><code>)</code><code>+</code><code>1</code>
<code> </code><code>return</code> <code>sorted</code><code>(res.items(),key</code><code>=</code><code>lambda</code> <code>x:x[</code><code>1</code><code>],reverse</code><code>=</code><code>True</code><code>)</code>
<code>#print open_file('log1.log')</code>
<code>def</code> <code>get_htmlstr(arr):</code>
<code>#拼接字元串</code>
<code> </code><code>tmp1</code><code>=</code><code>'<tr><td>Num%s</td> <td>%s</td> <td>%s</td> <td>%s</td></tr>'</code>
<code> </code><code>html_str</code><code>=</code><code>'<table border="1px">'</code><code>+</code><code>tmp1</code><code>%</code><code>(</code><code>'名次'</code><code>,</code><code>'IP'</code><code>,</code><code>'URL'</code><code>,</code><code>'COUNT'</code><code>)</code>
<code> </code><code>for</code> <code>index,value </code><code>in</code> <code>enumerate</code><code>(arr[:</code><code>10</code><code>]):</code>
<code> </code><code>html_str</code><code>+</code><code>=</code><code>'<tr><td>Num%s</td> <td>%s</td> <td>%s</td> <td>%s</td></tr>'</code> <code>%</code><code>(index,value[</code><code>0</code><code>][</code><code>0</code><code>],value[</code><code>0</code><code>][</code><code>1</code><code>],value[</code><code>1</code><code>])</code>
<code> </code><code>html_str</code><code>+</code><code>=</code><code>'</table>'</code>
<code> </code><code>return</code> <code>html_str</code>
<code>def</code> <code>write_html(file_name):</code>
<code> </code><code>res</code><code>=</code><code>open_file(file_name)</code>
<code> </code><code>with </code><code>open</code><code>(</code><code>'res2.html'</code><code>,</code><code>'w'</code><code>) as f:</code>
<code> </code><code>f.write(get_htmlstr(res))</code>
<code>write_html(</code><code>'log1.log'</code><code>)</code>
本文轉自 shouhou2581314 51CTO部落格,原文連結:http://blog.51cto.com/thedream/1831648,如需轉載請自行聯系原作者