2022-08-04 23:06来源:m.sf1369.com作者:宇宇
大数据比较通用的平台都是基于Hadoop+Saprk . 比较流行的平台是Hortonworks公司的HDP和Cloudera公司的CDH,不过目前这两家公司已经合并.
上面是HDP的大数据平台,主要支持三种开发语言, Java,Python和Scala等.
Scala最难入门,Python 比较容易上手,如果编程经验不多可以从Python 上手.
Java 是目前最流行的编程语言,如果想就业面广一些,可以考虑Java
我之前用Python爬过一些网站的数据,基本的原理我之前写过一篇文章分享过,你有兴趣可以去看看。
当然你现在遇到的问题比我用来爬数据的要复杂,那我谈一下个人的思路,希望对你有帮助。
第一种方法
总体思路为,读取你Excel中的待进行搜索的关键词,作为参数传到你内网网址中进行搜索,从得到的搜索结果页中爬取客户电话等信息导出到Excel中。
你要解决以下几个问题:
1、读取Excel的问题
2、如果内网需要登录验证,你要解决登录验证以及传参后得到搜索结果页的问题
3、怎么爬取以及爬取后导出Excel的问题
第二种方法
总体思路为,读取你Excel中的待进行搜索的关键词,作为数据库查询的条件,直连数据库进行查询,然后导出查询结果即可。
你要解决以下几个问题:
1、读取Excel的问题
2、拼接SQL链接数据库查询的问题
3、将查询结果导出为Excel的问题
第二种方法比较容易些,个人比较推荐。
我本身是使用Excel比较多,经常给群里解决EXCEL问题,如果你会用VBA的话!可以用Excel自身携带的VBA读取搜索数据,思路如下:
1.首先创建一个workbooks对象(工作簿)打开搜索的EXCEL文件;
2.遍历所打开的工作簿里每个Sheet(工作表);
3.使用cells.Fine方法搜索关键词或者定位到位置(单元格的地址)
剩下的就自己想怎么处理就怎么处理
在Sheet2里,在A列输入产品名称(不重复的),在B列输入对应的单价。
在Sheet1里,在C1输入 =IF(B1=,,VLOOKUP(B1,Sheet2!A:B,2,0))
这样,在B1输入产品名称,C1自动出单价。
你这个问题很笼统啊,一下子就提了这么个大的问题。Excel编程就是用VBA了。alt+f11可以打开编写窗口。
另外你说的数据比较是想怎样比较,按行?按列?数据情况如何?总得给个数据,给个需求,给个想要达到的目的。
1、直接录制宏(可以研究一下宏中的代码),可以实现一些简单的功能
2、用EXCEL VBA,功能很强大,你可以百度一下“excel VBA 程序开发”
3、如果是简单的计算功能就直接用系统自带的函数就可以了
这个很简单呐,就是一个小的数据库管理系统,而且要求的功能不多,你可以用你会的一门语言来写,用VB、Delphi写的话会比较快也比较直观。如果你不会写也可以从网上下载一些写好的源程序修改一下不就可以了。
用编程可以完成,单纯用函数很难办到.
EXCEL的表页右键,有个代码,进入就可以进行编写程序了,如果你懂得VB这儿写程序非常的简单,如果对任何编译语言都不懂的话,建议你还是手工做吧,要不就是从头开始学.
网上有很多VBA的书,可以看看,如果你英文好,最好看英文版的.
有问题可以QQ找我,共同探讨.94007769
可以试试 ACCESS----》文件----》获取外部数据-----》导入----》文件类型 选择 Microsoft Excel----》根据提示可以完成导入!
VB 要很多的代码
祝你好运
如果你非得用vb那以下代码 仅供参考
VB是常用的应用软件开发工具之一,由于VB的报表功能有限,而且一但报表格式发生变化,就得相应修改程序,给应用软件的维护工作带来极大的不便。因此有很多程序员现在已经充分利用EXECL的强大报表功来实现报表功能。但由于VB与EXCEL由于分别属于不同的应用系统,如何把它们有机地结合在一起,是一个值得我们研究的课题。
一、 VB读写EXCEL表:
VB本身提自动化功能可以读写EXCEL表,其方法如下:
1、在工程中引用Microsoft Excel类型库:
从工程菜单中选择引用栏;选择Microsoft Excel 9.0 Object Library(EXCEL2000),然后选择确定。表示在工程中要引用EXCEL类型库。
2、在通用对象的声明过程中定义EXCEL对象:
Dim xlApp As Excel.Application
Dim xlBook As Excel.WorkBook
Dim xlSheet As Excel.Worksheet
3、在程序中操作EXCEL表常用命令:
Set xlApp = CreateObject(Excel.Application) '创建EXCEL对象
Set xlBook = xlApp.Workbooks.Open(文件名) '打开已经存在的EXCEL工件簿文件
xlApp.Visible = True '设置EXCEL对象可见(或不可见)
Set xlSheet = xlBook.Worksheets(表名) '设置活动工作表
xlSheet.Cells(row, col) =值 '给单元格(row,col)赋值
xlSheet.PrintOut '打印工作表
xlBook.Close (True) '关闭工作簿
xlApp.Quit '结束EXCEL对象
Set xlApp = Nothing '释放xlApp对象
xlBook.RunAutoMacros (xlAutoOpen) '运行EXCEL启动宏
xlBook.RunAutoMacros (xlAutoClose) '运行EXCEL关闭宏
4、在运用以上VB命令操作EXCEL表时,除非设置EXCEL对象不可见,否则VB程序可继续执行其它操作,也能够关闭EXCEL,同时也可对EXCEL进行操作。但在EXCEL操作过程中关闭EXCEL对象时,VB程序无法知道,如果此时使用EXCEL对象,则VB程序会产生自动化错误。形成VB程序无法完全控制EXCEL的状况,使得VB与EXCEL脱节。
二、 EXCEL的宏功能:
EXCEL提供一个Visual Basic编辑器,打开Visual Basic编辑器,其中有一工程属性窗口,点击右键菜单的插入模块,则增加一个模块1,在此模块中可以运用Visual Basic语言编写函数和过程并称之为宏。其中,EXCEL有两个自动宏:一个是启动宏(Sub Auto_Open()),另一个是关闭宏(Sub Auto_Close())。它们的特性是:当用EXCEL打含有启动宏的工簿时,就会自动运行启动宏,同理,当关闭含有关闭宏的工作簿时就会自动运行关闭宏。但是通过VB的自动化功能来调用EXCEL工作表时,启动宏和关闭宏不会自动运行,而需要在VB中通过命令xlBook.RunAutoMacros (xlAutoOpen)和xlBook.RunAutoMacros (xlAutoClose) 来运行启动宏和关闭宏。
三、 VB与EXCEL的相互勾通:
充分利用EXCEL的启动宏和关闭宏,可以实现VB与EXCEL的相互勾通,其方法如下:
在EXCEL的启动宏中加入一段程序,其功能是在磁盘中写入一个标志文件,同时在关闭宏中加入一段删除此标志文件的程序。VB程序在执行时通过判断此标志文件存在与否来判断EXCEL是否打开,如果此标志文件存在,表明EXCEL对象正在运行,应该禁止其它程序的运行。如果此标志文件不存在,表明EXCEL对象已被用户关闭,此时如果要使用EXCEL对象运行,必须重新创建EXCEL对象。
四、举例:
1、在VB中,建立一个FORM,在其上放置两个命令按钮,将Command1的Caption属性改为EXCEL,Command2的Caption属性改为End。然后在其中输入如下程序:
Dim xlApp As Excel.Application '定义EXCEL类
Dim xlBook As Excel.Workbook '定义工件簿类
Dim xlsheet As Excel.Worksheet '定义工作表类
Private Sub Command1_Click() '打开EXCEL过程
If Dir(D:\temp\excel.bz) = Then '判断EXCEL是否打开
Set xlApp = CreateObject(Excel.Application) '创建EXCEL应用类
xlApp.Visible = True '设置EXCEL可见
Set xlBook = xlApp.Workbooks.Open(D:\temp\bb.xls) '打开EXCEL工作簿
Set xlsheet = xlBook.Worksheets(1) '打开EXCEL工作表
xlsheet.Activate '激活工作表
xlsheet.Cells(1, 1) = abc '给单元格1行驶列赋值
xlBook.RunAutoMacros (xlAutoOpen) 运行EXCEL中的启动宏
Else
MsgBox (EXCEL已打开)
End If
End Sub
Private Sub Command2_Click()
If Dir(D:\temp\excel.bz) <> Then '由VB关闭EXCEL
xlBook.RunAutoMacros (xlAutoClose) '执行EXCEL关闭宏
xlBook.Close (True) '关闭EXCEL工作簿
xlApp.Quit '关闭EXCEL
End If
Set xlApp = Nothing '释放EXCEL对象
End
End Sub
2、在D盘根目录上建立一个名为Temp的子目录,在Temp目录下建立一个名为bb.xls的EXCEL文件。
3、在bb.xls中打开Visual Basic编辑器,在工程窗口中点鼠标键选择插入模块,在模块中输入入下程序存盘:
Sub auto_open()
Open d:\temp\excel.bz For Output As #1 '写标志文件
Close #1
End Sub
Sub auto_close()
Kill d:\temp\excel.bz '删除标志文件
End Sub
4、运行VB程序,点击EXCEL按钮可以打开EXCEL系统,打开EXCEL系统后,VB程序和EXCEL分别属两个不同的应用系统,均可同时进行操作,由于系统加了判断,因此在VB程序中重复点击EXCEL按钮时会提示EXCEL已打开。如果在EXCEL中关闭EXCEL后再点EXCEL按钮,则会重新打开EXCEL。而无论EXCEL打开与否,通过VB程序均可关闭EXCEL。这样就实现了VB与EXCEL的无缝连接。
引用方法为:点击VB工程菜单,选择引用,选择Microsoft DAO 3.6 Compatibility Library并确定
'------------------------------------------------
Private Sub Form_Load() '窗口load过程
Dim myDb As Database
Dim myTb As Recordset
Set myDb = OpenDatabase(c:\data.mdb) '打开数据库文件
Set myTb = myDb.OpenRecordset(xpress) '打开表文件
If myTb.RecordCount < 4 Then '表文件记录小于4条退出程序
Set myTb = Nothing
Set myDb = Nothing
Exit Sub
End If
myTb.MoveFirst '记录指针移动到第一条
myTb.Move 2 '记录指针向下移动2条即移动到第三条
Text1.Text = myTb!DefaultValue 'text1赋值为xpress表的DefaultValue字段的第三条记录
myTb.MoveNext '记录指针下移一条
Text2.Text = myTb!DefaultValue 'text2赋值为xpress表的DefaultValue字段的第四条记录
Set myTb = Nothing
Set myDb = Nothing
End Sub
Private Sub Command1_Click()
Dim myDb As Database
Dim myTb As Recordset
Set myDb = OpenDatabase(c:\data.mdb)
Set myTb = myDb.OpenRecordset(xpress)
myTb.MoveFirst '记录指针移动到第一条
myTb.Move 2 '记录指针下移到第三条
myTb.Edit '数据库为编辑状态
myTb!DefaultValue = Text1.Text '数据库xpress表的DefaultValue字段第三条赋值为text1的文本
myTb.Update '保存更改的记录
myTb.MoveNext '记录指针下移一条到第四条
myTb.Edit
myTb!DefaultValue = Text2.Text
myTb.Update
Set myTb = Nothing
Set myDb = Nothing
End Sub