用python存excel到网页


下载python-3.6.5,安装,打开cmd,进入安装路径,C:\Users\Administrator\AppData\Local\Programs\Python\Python36-32\Scripts>(没有就搜索pip3.exe,进入程序路径;)

1,pip3 install wheel(前提是安装了pip) 
2,pip3 install xlrd
3,pip3 install openpyxl
4,pip install numpy

下载xlutils-2.0.0-py2.py3-none-any.whl,安装
pip install xlutils-2.0.0-py2.py3-none-any.whl
 

第一段程序:将excel转换为json数据;

from xlrd import open_workbook
from xlutils.copy import copy

import xlrd

dic2={}

dic={}

rb = open_workbook('2.xls')
#通过sheet_by_index()获取的sheet没有write()方法
rs = rb.sheet_by_index(0)
wb = copy(rb)
nr = rs.nrows
nc = rs.ncols
ws = wb.get_sheet(0)

for i in range(1, nr):
  
#########################################################################################################
  INDEX=rs.cell_value(i,0)
#########################################################################################################
  if INDEX not in range(1, 135):
    continue
  #print(INDEX)
#########################################################################################################
  psscor=rs.cell_value(i,24)
  qmscor=rs.cell_value(i,25)
  name=rs.cell_value(i,1)
  if isinstance(name,float):
    name=int(name)
  else:
    continue
  #array2=[0,0]
  if isinstance(qmscor,float):
    score=int(qmscor)
  else:
    continue


  if isinstance(psscor,float):
    score2=int(psscor)
  else:
    continue
#########################################################################################################
  if score2 not in range(1, 100):
    continue

  #print(name, end=" ")
  dic2[name]=score
  dic[name]=score2
  #if name in dic:
#########################################################################################################
   # ws.write(i, 8, dic[name])
    #dic[name]=

#cell_value = rs.cell_value(3,0)
#print(cell_value)
print("qm\n")
print(dic2)
print("\n")
print(len(dic2))

print("ps\n")
print(dic)
print("\n")
print(len(dic))


第二段程序,打开chrome,浏览器,右键进入console,输入如下程序完成:


(function () 


//ps
var dic=
{161031023: 76, 161031075: 78, 161031089: 76,  161052040: 76}
//qm
var dic2=
{161031023: 63, 161031075: 48, 161031089: 60, 54, 171035136: 91, 171035137: 81, 161052040: 66}


var rows = document.getElementById("DataGrid1").rows.length; 

var i=1;
while(i<rows+1)
{

var mytable = document.getElementById("DataGrid1").rows[i].cells[1].innerHTML;  

if(dic[mytable]!=null)

{
hu=i+1;

var vl=dic[mytable];

var ss= "DataGrid1__ctl"+hu+"_ps";

//alert(ss);
var r=document.getElementById(ss);
 
r.value=vl;


hu2=i+1;

var vl2=dic2[mytable];

var ss2= "DataGrid1__ctl"+hu+"_qm";

//alert(ss);
var r2=document.getElementById(ss2);
 
r2.value=vl2;
}

i=i+1;

}


}

)()

【为什么学爬虫?】        1、爬虫入手容易,但是深入较难,如何写出高效率的爬虫,如何写出灵活性高可扩展的爬虫都是一项技术活。另外在爬虫过程中,经常容易遇到被反爬虫,比如字体反爬、IP识别、验证码等,如何层层攻克难点拿到想要的数据,这门课程,你都能学到!        2、如果是作为一个其他行业的开发者,比如app开发,web开发,学习爬虫能让你加强对技术的认知,能够开发出更加安全的软件和网站 【课程设计】 一个完整的爬虫程序,无论大小,总体来说可以分三个步骤,分别是:网络请求:模拟浏览器的行为从网上抓取数据。数据解析:将请求下来的数据进行过滤,提取我们想要的数据。数据储:将提取到的数据储到硬盘或者内中。比如用mysql数据库或者redis等。那么本课程也是按照这几个步骤循序渐进的进行讲解,带领学生完整的掌握每个步骤的技术。另外,因为爬虫的多样性,在爬取的过程中可能会发生被反爬、效率低下等。因此我们又增加了两个章节用来提高爬虫程序的灵活性,分别是:爬虫进阶:包括IP代理,多线程爬虫,图形验证码识别、JS加密解密、动态网页爬虫、字体反爬识别等。Scrapy和分布式爬虫:Scrapy框架、Scrapy-redis组件、分布式爬虫等。通过爬虫进阶的知识点我们能应付大量的反爬网站,而Scrapy框架作为一个专业的爬虫框架,使用他可以快速提高我们编写爬虫程序的效率和速度。另外如果一台机器不能满足你的需求,我们可以用分布式爬虫让多台机器帮助你快速爬取数据。 从基础爬虫到商业化应用爬虫,本套课程满足您的所有需求!【课程服务】 专属付费社群+定期答疑
### 回答1: 可以使用Python的requests和BeautifulSoup库来爬取网页表格数据,并使用pandas库将数据储为Excel文件。 具体步骤如下: 1. 使用requests库发送HTTP请求获取网页内容。 2. 使用BeautifulSoup库解析网页内容,找到表格数据所在的HTML标签。 3. 使用pandas库将表格数据转换为DataFrame对象。 4. 使用pandas库将DataFrame对象保Excel文件。 示例代码如下: ```python import requests from bs4 import BeautifulSoup import pandas as pd # 发送HTTP请求获取网页内容 url = 'http://example.com/table.html' response = requests.get(url) # 解析网页内容,找到表格数据所在的HTML标签 soup = BeautifulSoup(response.content, 'html.parser') table = soup.find('table') # 将表格数据转换为DataFrame对象 df = pd.read_html(str(table))[0] # 将DataFrame对象保Excel文件 df.to_excel('table.xlsx', index=False) ``` 其中,`url`为要爬取的网页地址,`table`为表格数据所在的HTML标签,`df`为转换后的DataFrame对象,`table.xlsx`为保Excel文件名。 ### 回答2: Python是一种非常强大的编程语言,它在数据分析、机器学习和爬虫等领域表现得尤为突出。用Python来爬取网页上的表格数据并储为excel表格是一个非常常见的应用场景。 Python有许多库可以用来进行网络爬取,其中比较流行的是Requests和Beautiful Soup。Requests库用于向网站发送HTTP请求,Beautiful Soup用于解析HTML结构,将数据进行提取。在这个过程中,还需要用到pandas库,它可以让我们以数据框的形式保数据,并轻松地输出为excel文件。 实现步骤如下: 1. 引入必要的库 ```python import requests from bs4 import BeautifulSoup import pandas as pd ``` 2. 获取网页内容 ```python url = 'http://www.example.com' # 网页地址 response = requests.get(url) # 获取网页 soup = BeautifulSoup(response.content, 'html.parser') # 解析网页 ``` 3. 找到目标表格 在Beautiful Soup中,我们可以使用Tag、Name、Attributes和CSS选择器等选择器来定位目标元素。这里我们假设表格在网页上是一个table标签,可以通过以下代码进行选择: ```python table = soup.find('table') # 找到表格 ``` 4. 解析表格内容 在找到表格后,我们可以使用Beautiful Soup的方法,将表格内容逐行读取,并保在一个二维的列表中。这里我们假设表头和表格数据分别在thead和tbody标签内,可以使用以下代码来进行解析: ```python headers = [] #表头 rows = [] #表格数据 # 解析表头 for th in table.thead.find_all('th'): headers.append(th.text) # 解析表格数据 for tr in table.tbody.find_all('tr'): row = [] for td in tr.find_all('td'): row.append(td.text) rows.append(row) ``` 5. 将数据储到excel中 使用pandas库,可以将数据以数据框的形式储,并使用to_excel()方法将数据保excel文件中。 ```python df = pd.DataFrame(rows, columns=headers) # 创建一个数据框 df.to_excel('data.xlsx', index=False) # 保excel文件,不包括索引列 ``` 以上是使用Python爬取网页表格数据Excel的基本步骤,根据实际情况,可能需要根据不同的表格结构和数据类型进行一些调整和改进。总体上,Python可以极大地简化我们从网页上提取数据的过程,为我们的数据处理和分析工作提供了高效便捷的支持。 ### 回答3: Python是一种广泛使用的编程语言,也是数据科学领域中最常用的语言之一,它拥有相当丰富和实用的爬虫库可以方便的实现数据采集。随着现在各个网站对数据的重视和数据交互的日益普及,进行网页数据爬取也变得越来越普遍,下面就简单介绍一下Python如何实现爬取网页中的表格数据并进行导出到Excel。 第一步:安装相关库 Python提供的第三方库有很多,当然也有很多与网络爬虫有关的库,例如requests、beautifulsoup4、pandas和openpyxl等。我们需要使用到的是requests(可以帮助我们获取所需的HTML网页)和pandas(可以帮助我们将数据保为CSV或Excel格式),如果在安装库时遇到问题可以使用pip来安装: pip install requests pip install pandas pip install openpyxl 第二步:获取网页源码 获取网页源码的常用方法是使用requests库,例如我们可以使用以下代码获取百度首页的HTML源码: import requests url = 'https://www.baidu.com/' response = requests.get(url) html = response.text 第三步:使用beautifulsoup4库获取表格元素 在获取了网页源码之后,我们需要使用beautifulsoup4库来解析HTML,从而提取出表格元素并进行处理。假设我们想要获取表格元素的所有内容,可以使用以下代码: from bs4 import BeautifulSoup soup = BeautifulSoup(html, 'html.parser') table = soup.find('table', attrs={'class': 'table_class_name'}) 这里解释一下代码中的参数,html.parser参数是HTML解析器,'table_class_name'是我们在HTML源码中查找表格元素时要搜索的表格类。 第四步:将数据保Excel文件 我们现在已经获得了网页中的表格元素,接下来需要将这些数据保Excel格式的文件,我们可以使用pandas库来完这个任务。假设我们要将数据保Excel格式的文件,并且我们需要将表头和行储在独立的列中: import pandas as pd df = pd.read_html(str(table))[0] df.to_excel(r'表格数据.xlsx', index=False, header=[ '表头A', '表头B', '表头C']) 这是一个简单的例子,我们可以通过pandas灵活设置DataFrame来实现更多的需求。 总结 Python代码爬取网页表格数据Excel非常方便,在前面的例子中,我们可以使用requests库获取网页源码,使用beautifulsoup4库获取表格元素,使用pandas库将数据保Excel格式的文件,从而实现数据爬取的功能,如果涉及到页面分页或者反爬虫策略,需要按照实际情况进行相应的处理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值