| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1908 人关注过本帖
标题:已结贴
只看楼主 加入收藏
a251357
Rank: 2
等 级:论坛游民
帖 子:42
专家分:14
注 册:2014-4-24
结帖率:90%
收藏
已结贴  问题点数:20 回复次数:10 
已结贴
销贴

[此贴子已经被作者于2017-1-15 05:10编辑过]

2015-08-15 09:20
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4947
专家分:30084
注 册:2008-10-15
收藏
得分:0 
首先,这个地方往后是 百度快照 这四个字和链接,以这个来定位结尾。
其次这个域名是绿色的,应该是一个统一的 css ,用这个定开始位置。
最后,根据取到的内容进行分析,取自己要用和内容。

在手机上,没法写代码。电脑上周装了 win10了,还没 vb

授人于鱼,不如授人于渔
早已停用QQ了
2015-08-15 13:12
a251357
Rank: 2
等 级:论坛游民
帖 子:42
专家分:14
注 册:2014-4-24
收藏
得分:0 
回复 2楼 风吹过b
你说的这个方式我也试过 加载成文字信息 获取对应部分信息 貌似不行!所以再次请教!
2015-08-15 13:27
wmf2014
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:216
帖 子:2039
专家分:11273
注 册:2014-12-6
收藏
得分:0 
一般通过获取源文件,分析href标签并提取链接地址,又或者提取所有的“http://”打头的字符串也行。

能编个毛线衣吗?
2015-08-16 11:13
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4947
专家分:30084
注 册:2008-10-15
收藏
得分:0 
你是要 取 绿色那个内容,还是 取 百度出来的结果?
如果是百度出来的结果,按你的方法读取后,然后再读一遍。
如使用 webborws 再读取,或 winhttp 读都可以的。

如果是取绿色那个内容,按我二楼的方案去做。
<span class="g">info.
就是绿色部分,按 这个 <span class="g"> 去搜索就可以了。

授人于鱼,不如授人于渔
早已停用QQ了
2015-08-16 21:22
a251357
Rank: 2
等 级:论坛游民
帖 子:42
专家分:14
注 册:2014-4-24
收藏
得分:0 
回复 4楼 wmf2014
是这样的!第一张图是我想获取百度快照的那10个绿色链接 ,第二张图是网页源码百度自转码的链接 其实都是他俩同一个链接只不过在源码里变得不同! 我的问题是准确抓取那10个百度快照的链接!可是我怎么尝试都不知道怎么去过滤其他和准确的抓取!!!我写的代码也只是获取了百度里面的所有链接!却没有准确抓取想要的那10个链接!求源码过程!!十分感谢!我就是想做一个能每天检测我网站的排名动态!
2015-08-17 00:09
a251357
Rank: 2
等 级:论坛游民
帖 子:42
专家分:14
注 册:2014-4-24
收藏
得分:0 
回复 5楼 风吹过b
是这样的!第一张图是我想获取百度快照的那10个绿色链接 ,第二张图是网页源码百度自转码的链接 其实都是他俩同一个链接只不过在源码里变得不同! 我的问题是准确抓取那10个百度快照的链接!可是我怎么尝试都不知道怎么去过滤其他和准确的抓取!!!我写的代码也只是获取了百度里面的所有链接!却没有准确抓取想要的那10个链接!求源码过程!!十分感谢!我就是想做一个能每天检测我网站的排名动态!!!!
2015-08-17 00:12
a251357
Rank: 2
等 级:论坛游民
帖 子:42
专家分:14
注 册:2014-4-24
收藏
得分:0 
Private Sub Form_Load()
Web1.Navigate "https://www.baidu.com/s?wd=动态混胶机"
End Sub


'求解这段代码怎么貌似失效了似的!

Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
Dim n As Long, i As Long
n = Web1.Document.getElementsByTagName("A").Count '页面上总共几个链接
For i = 0 To (n - 1)
 List1.AddItem Web1.Document.getElementsByTagName( "A" )(i).innerText & "---" & Web1.Document.getElementsByTagName("A")(i).href '取它的文字和URL并放入list1列表
Next
End Sub

'求解这段代码怎么貌似失效了似的!
2015-08-17 01:03
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4947
专家分:30084
注 册:2008-10-15
收藏
得分:0 
Web1.Navigate "https://www.baidu.com/s?wd=动态混胶机"
这里的对象是: web1

Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
这里的对象是 WebBrowser1 ,自然无效。

前后要统一,开始写了代码,就轻易不要去修改控件的名字。

授人于鱼,不如授人于渔
早已停用QQ了
2015-08-17 09:56
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4947
专家分:30084
注 册:2008-10-15
收藏
得分:20 
程序代码:
Option Explicit

Private Sub Command1_Click()
WebBrowser1.Navigate "https://www.baidu.com/s?wd=深圳混胶机"

End Sub
Private Sub List1_Click()
Text1.Text = List1
Text2.Text = List1.ListIndex                      'list1选中行行数

End Sub
Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, url As Variant)
List1.Clear
Dim Document As Object
Dim i As Long, s1 As String, s2 As String
Dim s3 As String, s4 As String

For i = 0 To WebBrowser1.Document.links.length - 1
    s1 = WebBrowser1.Document.links(i).href
    s2 = WebBrowser1.Document.links(i).innertext
    If Len(s2) > 1 Then                         '没取到标题就不添加
        If s2 = "百度快照" Then                 '如果取到的标题是 百度快照
            List1.AddItem s4 & " : " & s3       '把缓存加进列表
        End If
        s3 = s1                                 '缓存
        s4 = s2
    End If
Next i

End Sub


加了过滤在里面,但百度地址还没转换,还在想转换的事情,
使用 winhttp 对象时,会自动重定位,需要更换方式。

授人于鱼,不如授人于渔
早已停用QQ了
2015-08-17 10:31
快速回复:已结贴
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.045326 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved