我的任务是简化从特定在线网站收集数据的流程,并将其导入Excel 2010电子表格。网站是' Web of Science',http://apps.webofknowledge.com/UA_GeneralSearch_input.do?product=UA&SID=T2b1MtfKgCqeB2h9j9J&search_mode=GeneralSearch,这是一个详细介绍学术出版物和期刊的网站。
目前,他们将访问该网站,输入少量搜索参数,然后手动记录网页中的相关数据。他们希望能够在Excel中输入一个关键字(作为搜索项目),然后自动完成剩余的流程,并为他们提供所需数据的电子表格。
然而,他们所需的数据以输入的出版物名称的潜在作者列表的形式出现,该列表目前出现在网站上,作为“优化结果”下的一系列复选框:{{{ 3}}
所以基本上我需要用户能够在Excel中输入他们将进入网站搜索字段的搜索项目,然后将与该主题相关的作者列表导入电子表格。
这可能吗?也许在Excel中使用VBA代码?
人们会推荐什么?我真的只是一个新手Excel用户,但确实有编程经验。
非常感谢你的帮助,
约翰
*仅供参考,更新,这是我到目前为止所获得的,直到用户输入一个单词,然后由网站搜索工具搜索。现在需要让作者将它们导入电子表格:
Sub WoS()
Dim IE As Object
Dim Doc As Object
Set IE = CreateObject("internetexplorer.application")
IE.Visible = True
navigate:
' navigate to the relevant website
IE.navigate "http://apps.webofknowledge.com/UA_GeneralSearch_input.do? product=UA&search_mode=GeneralSearch&SID=T23ZytENYQRHyJkmixB&preferencesSaved="
' wait until page has finished loading
Do While IE.readystate <> 4: DoEvents: Loop
Set Doc = CreateObject("htmlfile")
Set Doc = IE.document
If Doc Is Nothing Then GoTo navigate
' allow user to input keywords for search
Set myInput = Doc.getelementbyid("value(input1)")
myInput.Value = InputBox("Please enter the subject for Publication Name: ")
' click button to process search
Set btnSubmit = Doc.getelementbyid("UA_GeneralSearch_input_form_sb")
btnSubmit.Click
End Sub
答案 0 :(得分:0)
也许您应该尝试使用Power Query?使用Power Query,您可以直接从Web下载数据(并进行转换和清理),然后在工作簿中使用。所有数据都保存为&#34;过程&#34;所以你可以简单地刷新网页上的内容。另一种选择当然是代码即VBA。当我能够检查你的地址时,我会告诉你是否有可能从这些网站获取数据。