因为前些日子杀了一个程序员祭天, 导致程序员人手不足, 这不, 老衲让程序员们去校验当前数据的可靠性, 就被程序员一把怼回来:"时间紧任务急, 你要是不想影响排期, 就自己干吧~"
我去! 敢这么和产品经理说话!
老衲赶紧给程序员买个外卖盒饭压压惊.

当前面临的局面是, 手里有几万条记录. 主要是旅游线路的信息. 但是有一些已经无效或者下架了. 我们需要知道这些已经无法售卖的线路, 在总数中的比例.

方案1:
随便抽几百条, 然后每个链接点一下, 看一眼, 然后做个记录, 最后统一汇总一下就好啦.
嗯, 可行性很高. 先走这条路试试.
按下三星自杀式秒表. 双记一下单元格, 让url变成真正可点击的超链接. 点一下, 等5秒, 哦哦, 该线路目前正常, 在表格里面写个1表示正常(写0表示不正常), 看一下秒表, 总耗时25秒.
抽200条 = 5000秒. 加上休息的时间, 四舍五入就是7200秒. 很好, 两个小时而已.
老衲当然是否决啦! 两个小时就搞这么200条数据. 猪才会干.
方案2:
随便抽几百条, 然后让爬虫把基本信息爬回来, 然后用筛选或过滤, 一次性统计出badcase占比.
嗯, 爬虫怎么搞? 喂, 老贾, 你的爬虫系统借我用用~~ ( 老贾: 你有机器吗? 你有权限吗? 你会使用这个beautiful Soup框架吗? )
......沉思1分钟...................沉思3分钟.....................沉思10分钟......................睡30分钟...............
小样儿, 无非是欺负老衲硬盘空间小, 装不上开发环境嘛. 但老衲手里还有Excel呀.

这个玩意儿不就是个现成的爬虫么?
来一行试试:

果然可以, 那就开工吧! (顺道擦擦睡觉时的口水)
- 先把数据简单整理一下, 起码汇成表格. 表格就随便起个名字吧, 叫"TableLvmamaSet"

2. 打开"开发工具", 不会打开的请看老衲之前的相关Excel教程.

3. 插入一个模块

4. 写代码咯~~~~~不难 ,真的不骗你, 超简单的. 磕两只小龙虾就写好了.

Sub crawler()
Dim URL As String
Dim RowNum As Integer
Dim UrlList As Range
Dim DestiArea As Range
'先打开原始文件所在的文件, 获取源数据中的URL
Windows("驴妈妈商品抽样.xlsx").Activate
Range("TableLvmamaSet[url]").Select
'将获取到的URL列表暂存一下, 因为Excel很多操作会影响到"选择", 所以要暂存
Set UrlList = Selection
'再打开目标文件
Windows("工作簿1").Activate
'向目标文件写入
For Each Cell In UrlList
'毎一条结果, 因为会有很多行, 所以只能每条结果独占一列
URL = Cell.Text
RowNum = Cell.Row
Cells(1, RowNum).Value = URL
Set DestiArea = Cells(2, RowNum)
With ActiveSheet.QueryTables.Add(Connection:="URL;" & URL, Destination:=DestiArea)
.Name = URL
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlEntirePage
.WebFormatting = xlWebFormattingNone
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:=False
End With
Next
End Sub
5. 跑起来, 喝杯咖啡, 20分钟后再看看~~
果然成功了. 每一列就是一个网页的内容. 的确有下架产品.

6. 然后使用一下查找工具

7. 于是:

大功告成. 代码留着, 下顿还可以继续用. 老衲要继续吃小龙虾去啦.
我们下期再见.