爬蟲抓取表格中的數據


有時候因為某些需求需要爬取某個網頁中某個表格里的數據,這時候如果這個頁面只有這一個表格的時候,那么抓取就比較容易了,但是當這個頁面中有大量的表格的時候,再使用之前的方法,就會發現雖然也能抓取到要的數據,但是還有一大堆冗余。

這時候,就可以使用下面這種方法

就以這個網頁里的表格為例

#coding:utf-8

import re
import urllib2

url='http://58921.com/'
header={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.90 Safari/537.36'}

request=urllib2.Request(url,headers=header)
page_code=urllib2.urlopen(request).read()

# 從網頁源碼中找到你要抓取表格的下列信息

# 表格開頭
start_code='<table class="table table table-bordered table-condensed">'
# 表格結尾
end_code='</tbody>'
# 表格中要抓取的數據
find_code='<td><a href=".*?" title=".*?">(.*?)</a></td><td>(.*?)</td><td>(.*?)</td><td>(.*?)</td><td>(.*?)</td>'

# 這里通過 start和end指定在整個頁面中你所尋找的表格
start=page_code.find(start_code)
end=page_code.find(end_code)
find=page_code[start:end]

final_find=re.findall(find_code,find)

for x in final_find:
    print ','.join(x)

print 'finish'

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM