希望标题有意义。我现在的问题是相当具体的,但我认为这是一个与使用其他域名的其他人相关的解决方案。
我有一个excel文档,其中包含B列中1000多个URL的列表(从B1开始)。我想通过VBA实现的是打开每个URL(通过某种循环)并将特定的文本行从网页复制到C-cell。在我的文档中,链接都是指我尝过的不同啤酒及其在ratebeer.com上的相应页面。我希望代码做的是将网站上提到的啤酒风格粘贴在URL旁边的C-cell中(例如,对于URL https://www.ratebeer.com/beer/3-fonteinen-doesjel/77584/,我希望文本" Lambic Style - Gueuze"出现在我的excel文件中。)
很抱歉,如果我有错过的类似答案,我对VBA缺乏经验,因此很难知道要搜索的确切字词。
答案 0 :(得分:0)
我认为这可以通过在Python中结合Beautifulsoup和openpyxl来完成。
所有链接的格式是否与示例相同?
答案 1 :(得分:0)
这应该做你想要的。
Sub Sample()
Application.Calculation = xlCalculationManual
Application.ScreenUpdating = False
Application.EnableEvents = True
Dim wsSheet As Worksheet, Rows As Long, links As Variant, IE As Object, link As Variant
Set wb = ThisWorkbook
Set wsSheet = wb.Sheets("Sheet1")
Set IE = New InternetExplorer
Rows = wsSheet.Cells(wsSheet.Rows.Count, "A").End(xlUp).row
links = wsSheet.Range("A1:A" & Rows)
With IE
.Visible = True
For Each link In links
.navigate (link)
While .Busy Or .ReadyState <> 4: DoEvents: Wend
wsSheet.Range("B" & Rows).Value = .Document.body.innerText
Next link
End With
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
Application.EnableEvents = True
End Sub
只需修改它以满足您的特定需求。