python 爬取网页表格数据

 

复制代码
# encoding:utf-8
from bs4 import BeautifulSoup
import requests
import csv
import bs4


# 检查url地址
def check_link(url):
    try:

        r = requests.get(url)
        r.raise_for_status()
        r.encoding = r.apparent_encoding
        return r.text
    except:
        print('无法链接服务器!!!')

# 爬取资源
def get_contents(ulist, rurl):
    soup = BeautifulSoup(rurl, 'lxml')
    trs = soup.find_all('tr')
    for tr in trs:
        ui = []
        for td in tr:
            ui.append(td.string)

        ulist.append(ui)
    print(ulist)

# 保存资源
def save_contents(urlist):
    with open("D:/2016年中国企业500强排行榜.csv", 'w') as f:
        writer = csv.writer(f)
        writer.writerow(['2016年中国企业500强排行榜'])
        for i in range(len(urlist)):
            writer.writerow([urlist[i][1], urlist[i][3], urlist[i][5]])


def main():
    urli = []
    url = "http://www.maigoo.com/news/463071.html"
    rs = check_link(url)          #先调用检查url函数
    get_contents(urli, rs)
    #save_contents(urli)


main()
复制代码

 

posted @   chengxuyonghu  阅读(290)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示