首页 > 其他分享 >爬取网页table数据

爬取网页table数据

时间:2023-08-22 11:58:03浏览次数:32  
标签:__ 网页 trade 爬取 import table data row

python爬取table表格里的数据:

    

import requests
from bs4 import BeautifulSoup
import pandas as pd
 
# 爬取进出口贸易数据的函数
def crawl_trade_data():
    url = "https://www.india.org.pk/pages.php?id=16"  # 贸易和工业部网站的进出口贸易数据页面
    response = requests.get(url)
    
    # 解析网页
    soup = BeautifulSoup(response.content, 'html.parser')
    
    # 查找表格并提取数据
    table = soup.find('table')
    
    trade_data = []
    for row in table.find_all('tr'):
        data_row = []
        for col in row.find_all(['td', 'th']):
            data_row.append(col.text.strip())
        if data_row:
            trade_data.append(data_row)
            
    return trade_data

# 将数据保存到Excel
def save_to_excel(data):
    df = pd.DataFrame(data[1:], columns=data[0])  # 将爬取的数据转换为DataFrame格式
    df.to_excel('trade_data.xlsx', index=False)  # 保存DataFrame到Excel文件

# 主函数
def main():
    trade_data = crawl_trade_data()
    
    # 打印最近几年的进出口贸易数据
    print("近年印度进出口贸易情况:")
    for data_row in trade_data:
        year = data_row[0]
        export_value = data_row[1]
        import_value = data_row[2]
        print(f"{year} 年,出口额:{export_value},进口额:{import_value}")
    
    save_to_excel(trade_data)  # 将数据保存到Excel

if __name__ == "__main__":
    main()
View Code

 

标签:__,网页,trade,爬取,import,table,data,row
From: https://www.cnblogs.com/shiningleo007/p/17648173.html

相关文章

  • ios开发之--tableview刷新某一个区和某一行
    在开发中,有时候,我们不需要刷新整个表,只需要刷新局部数据即可,具体代码如下://section刷新NSIndexSet*indexSet=[[NSIndexSetalloc]initWithIndex:2];[tableviewreloadSections:indexSetwithRowAnimation:UITableViewRowAnimationAutomatic];//cell刷新NSInde......
  • ios开发之--TableView刷新跳动问题
    场景:最近在项目中,加入了一个新的跳转功能,但是在返回上一个页面的时候,页面会出现跳动的问题,原因:1)接口调动的问题2)tableview的预估高度功能,就是可以给一个预估的高度,然后让cell自适应,_tableView.estimatedRowHeight=100.0f;_tableView.rowHeight=UITableViewAutomaticDimension;......
  • 网页颜色选择器,有时候需要选颜色时使用。
    效果颜色选择器.html<htmlxmlns="http://www.w3.org/1999/xhtml"><head><metahttp-equiv="Content-Type"content="text/html;charset=utf-8"><title>RGB网页颜色在线取色器</title><metaname="keywords"co......
  • Future和CompletableFuture区别
    Future:获取异步返回的结果需要使用轮询的方式,消耗cupExecutorServiceexecutorService=Executors.newFixedThreadPool(10);Future<String>future=executorService.submit(()->{try{Thread.sleep(2000);}......
  • 网页端实现Excel转JSON
    1.引言有时工作中拿到的数据是Excel表格,要在前端网页上使用,通常需要把文件转为JSON微软的MicrosoftExcel没有导出为JSON的功能,其他的第三方网站又不太信任开源的Excel转JSON的小工具倒是不少,但是往往需要下载,比如这个:neil3d/excel2json:把Excel表转换成json对象,并保存到一个......
  • VUE element-ui之table表格全局排序
    一调用后端接口排序功能步骤:标签中定义排序方法:<el-tableref="reset"v-loading="loading":data="tableData"height="520"border@sort-change="sortChange">要排序的字段......
  • 《HTML CSS JavaScript 网页制作》JavaScript基本知识(简介、语法、事件、对象)
    一、JavaScript简介1、JavaScript特点脚本语言:是一种解释型的脚本语言,在程序运行过程中逐行进行解释;基于对象:可以创建对象,也能使用现有的对象;简单:采用的是弱类型的变量类型,对使用的数据类型未作出严格的要求;动态性:采用事件驱动,不需要经过web服务器就可以对用户的输入作出响应;跨平台......
  • 跨版本迁移数据报错tables declared WITH OIDS are not supported
    瀚高数据库目录环境症状问题原因解决方案环境系统平台:Linuxx86-64RedHatEnterpriseLinux7版本:6.0症状迁移数据还原数据库时报错ERROR:tablesdeclaredWITHOIDSarenotsupported问题原因Postgresql12后取消了OIDS=TRUE的用法。解决方案修改脚本中的语句脚本中出现OIDS=T......
  • oracle中怎样把一个用户的所有table的select权限授给另外一个用户
    1、双击桌面sqldeveloper软件图标启动软件。2、新建数据库连接,填写登录数据库信息并选择相应角色进行登录。3、登录成功后先查询出hr用户下所有的表名,可直接通过dba_tables来进行查询。4、把查询权限赋给测试用户的方法有两种,一种为当用户下的表比较少的情况下可以直接通过gran......
  • 表格中的table-layout属性讲解
    定义和用法table-layout属性用来显示表格单元格、行、列的算法规则。table-layout有三个属性值:auto、fixed、inherit。fixed:固定表格布局固定表格布局与自动表格布局相比,允许浏览器更快地对表格进行布局。在固定表格布局中,水平布局仅取决于表格宽度、列宽度、表格边框宽度......