这个功能如何实现?PHP/Javascript我需要的功能是这样的:
1,用户输入搜索关键词,我替他后台在google或百度搜索。
2,搜索结果先不给用户,我处理一下,用正则表达式匹配,并特殊模板输出。
思路大致是有的,就是不很清晰,最好大侠能提供类似的开源实现,最好有代码。
尤其是“用户输入搜索关键词,我替他后台在google或百度搜索,结果先缓存,不给用户,而是自己先处理一下”,
这个功能不知道如何实现,最好有代码。
1,用户输入搜索关键词,我替他后台在google或百度搜索。
2,搜索结果先不给用户,我处理一下,用正则表达式匹配,并特殊模板输出。
思路大致是有的,就是不很清晰,最好大侠能提供类似的开源实现,最好有代码。
尤其是“用户输入搜索关键词,我替他后台在google或百度搜索,结果先缓存,不给用户,而是自己先处理一下”,
这个功能不知道如何实现,最好有代码。
不用正则也行的。
Google API有个接口:
http://code.google.com/intl/zh-CN/apis/ajaxsearch/
手动做一次搜索
网址列会出现一大串查询 URL
这就是重点了~当你的用户进行搜索时
参考你手动得的 URL
用他的关键词重组成新的查询URL
再用将这 URL 传到 google
得到返回结果(这过程可以用file_get_content,HTTP_Client,Curl ... 等等实现)现在~手上有一个google 的查询结果html
用正则之类的东西
根据类名就可以得到大约的标题,简介(google 排列得很好,已经帮你用class名分好类了)
再用strip_tags() 清理一下
就可以得到漂亮的格式
之后就可以为所欲为了~嘿嘿 ^_^记得将结果存进自己的数据库做缓存
不停查询会被google封IP的
写了很多 Zzz...
我想API可能是最好的了,这样很费时间,并且Google封掉IP就麻烦了。
最终用户都会被指向google
API只是google 的广告而已
他为你提供功能~你为他做免费广告
多给点分哦!<%
On Error Resume Next
Server.ScriptTimeOut=9999999
Function getHTTPPage(Path)
t = GetBody(Path)
getHTTPPage=BytesToBstr(t,"gb2312")
End function
Function GetBody(url)
on error resume next
Set Retrieval = CreateObject("Microsoft.XMLHTTP")
With Retrieval
.Open "Get", url, False, "", ""
.Send
GetBody = .ResponseBody
End With
Set Retrieval = Nothing
End Function
Function BytesToBstr(body,Cset)
dim objstream
set objstream = Server.CreateObject("adodb.stream")
objstream.Type = 1
objstream.Mode =3
objstream.Open
objstream.Write body
objstream.Position = 0
objstream.Type = 2
objstream.Charset = Cset
BytesToBstr = objstream.ReadText
objstream.Close
set objstream = nothing
End Function
Function Newstring(wstr,strng)
Newstring=Instr(lcase(wstr),lcase(strng))
if Newstring<=0 then Newstring=Len(wstr)
End Function
url="http://www.baidu.com/s?wd=潇湘博客"
wstr=getHTTPPage(url)
ck1="<div id=scriptdiv></div>"
ck2="<br clear=all>"
start=Newstring(wstr,ck1)
over=Newstring(wstr,ck2)
body=mid(wstr,start,over-start)body=right(body,len(body)-len(ck1))
body=Left(body,len(body)-0)%>
<%=body%>
貌似我需要绕开的就是这个,因为Google的条款请大家读一下,不许去掉Logo,不许去掉公司链接,不许
如果用了Google AjaxSearch API意义何在,都在给Google免费做广告了。于是我想,自己搭一个Web搜索引擎得了,大家觉得有多难?Nutch、Lucene怎末样?