手把手教你做关键词匹配项目(搜索引擎)---- 第七天

第七天

小帅帅拿回去仔细研究了一个晚上。

发现代码其实都是自己写的,就多了一些类,于老大还不是抄的我的代码,心里又鄙视了于老大一番。

其实每个人都有通病,写过程的总是会鄙视写面向对象的,因为他们没体会到面向对象是啥玩意,要让他们写好可得花上好几年的工夫。

小帅帅学编程的时候,明明知道有函数这一概念,知道函数的写法,但是实际上就算一个函数里面几百行代码,也不知道去提前多个函数出来,美其名约:你看我多厉害,几百行代码耶。

小帅帅心里虽然鄙视于老大,但是看到于老大的代码怎么感觉很清爽,一切都那么自然。

但是他还是忍不住要去问于老大:

“于老大,其实你的代码跟我的一样,为什么要这样写,这样写有什么好处?”

于老大就说:“恩,是的,代码基本上一样,而且有的时候还会多出一些代码,你在比较的过程中你发现了没有,我写的那份代码是不是对你的代码进行总结和归类” 。

 

面向对象其实就是对面向过程的总结和归类。

 

可惜小帅帅还是不太理解,心里虽然不太乐意,毕竟人家是老大,听人家的话准没错。

小帅帅回答到:“恩,是的,那我扩展是不是继承Source就好了”。

于老大回到:“恩,是的,继承的Source只要对里面的属性keywords赋值就行了,是不是很方便,如果你对面向对象还不太熟悉的话,建议你先把这些基础学好”。

 

面向对象:面向对象(Object Oriented,OO)是软件开发方法。面向对象的概念和应用已超越了程序设计和软件开发,扩展到如数据库系统、交互式界面、应用结构、应用平台、分布式系统网络管理结构、CAD技术、人工智能等领域。[来自百度词条]

 

“面向对象”是专指在程序设计中采用封装继承多态等设计方法。

 

于老大继续说到:“你按照我的方法继续扩展一个,来加深思路。就那个“是不是想找”的任务 。”

小帅帅回答到:“好的”。

小帅帅不用一个小时就搞定了任务。

 

 

请求的关键词为大码女装,地址为:http://s.taobao.com/search?spm=1.7274553.1997520241.2.RsphTP&q=%C5%AE%D1%A9%B7%C4%C9%C0&refpid=420461_1006&source=tbsy&style=grid&tab=all

HTML:

<dl class="supplement-relate">
    <dt>您是不是想找:</dt>
    <dd>
                    <a trace="relatedSearch" href="/search?spm=a230r.1.0.0.TjhJTC&amp;q=%D1%A9%B7%C4%C9%C0%C5%AE2014&amp;rs=up&amp;rsclick=1" data-spm-anchor-id="a230r.1.0.0">雪纺衫女2014</a>
                    <a trace="relatedSearch" href="/search?q=%C5%AE%D1%A9%B7%C4%C9%C0%B3%A4%BF%EE&amp;rs=up&amp;rsclick=2">女雪纺衫长款</a>
                    <a trace="relatedSearch" href="/search?q=%B4%F3%C2%EB%C5%AE%D1%A9%B7%C4%C9%C0&amp;rs=up&amp;rsclick=3">大码女雪纺衫</a>
                    <a trace="relatedSearch" href="/search?q=%D1%A9%B7%C4%C9%C0%C5%AE%B6%CC%D0%E4&amp;rs=up&amp;rsclick=4">雪纺衫女短袖</a>
                    <a trace="relatedSearch" href="/search?q=%D1%A9%B7%C4%C9%C0+%C5%AE+%B3%A4%D0%E4&amp;rs=up&amp;rsclick=5">雪纺衫女长袖</a>
                    <a trace="relatedSearch" href="/search?q=%C1%AC%D2%C2%C8%B9&amp;rs=up&amp;rsclick=6">连衣裙</a>
                    <a trace="relatedSearch" href="/search?q=%C5%AEt%D0%F4&amp;rs=up&amp;rsclick=7">女t恤</a>
                    <a trace="relatedSearch" href="/search?q=%B4%F3%C2%EB%C5%AE%D7%B0&amp;rs=up&amp;rsclick=8">大码女装</a>
                    <a trace="relatedSearch" href="/search?q=%C5%AE%D1%A9%B7%C4%C9%C0%B0%D7%C9%AB&amp;rs=up&amp;rsclick=9">女雪纺衫白色</a>
                    <a trace="relatedSearch" href="/search?q=%C5%AE%D1%A9%B7%C4%C9%C0%D6%D0%D0%E4&amp;rs=up&amp;rsclick=10">女雪纺衫中袖</a>
                    <a trace="relatedSearch" href="/search?q=%C5%AE%D1%A9%B7%C4%C9%C0%CC%D7%D7%B0&amp;rs=up&amp;rsclick=11">女雪纺衫套装</a>
                    <a trace="relatedSearch" href="/search?q=%CE%DE%D0%E4%D1%A9%B7%C4%C9%C0%C5%AE&amp;rs=up&amp;rsclick=12">无袖雪纺衫女</a>
                    <a trace="relatedSearch" href="/search?q=%C5%AE%D1%A9%B7%C4%C9%C0%B3%A4%D0%E4%D0%C2%BF%EE&amp;rs=up&amp;rsclick=13">女雪纺衫长袖新款</a>
                    <a trace="relatedSearch" href="/search?q=2014%D1%A9%B7%C4%C9%C0+%C5%AE+%B6%CC%D0%E4&amp;rs=up&amp;rsclick=14">2014雪纺衫女短袖</a>
            </dd>
</dl>

小帅帅的代码:

class TaobaoRelatedSearchSource extends Source
{
    
    public function __construct()
    {
        # code...
        $curl = new ExtendedCurl();
        $content = $curl->get("http://s.taobao.com/search?spm=1.7274553.1997520241.2.RsphTP&q=%C5%AE%D1%A9%B7%C4%C9%C0&refpid=420461_1006&source=tbsy&style=grid&tab=all");
        if($curl->hasError()){
            throw new Exception($curl->getError(), $curl->getHttpCode());    
        }

        $html = str_get_html($content);
        foreach($html->find(".supplement-relate a[trace==relatedSearch]") as $ele){
            $this->keywords[] = $ele->innertext;
        }

    }
}

 

小帅帅把代码拿给于老大,受到于老大的称赞,心里美滋滋的。不过小帅帅还是不懂面向对象的真谛。

小帅帅乐呵不久,又犯愁了,原因是淘宝API怎么用,如何取宝贝信息?资料又来自哪里。

小帅帅不得不又屁颠屁颠的跑去于老大身边去,请教破敌之策。

于老大先让他去看淘宝API教程,扔了个网址:http://open.taobao.com,让小帅帅自己去看。

小帅帅不得不又再一次在心里默默的鄙视了于老大,都要我去看,还要你干吗,这奇怪的念头一出,小帅帅赶紧的摇摇头,想让脑袋不再继续想下去。

就这样,小帅帅去淘宝开放平台取经去了,什么面向对象都抛脑后了。( 0 没有实际的磨练与理解,还是跟着老大的想法去走 0 )

PS:(学习是个人的事情,项目总监也只是领进门,能不能成就还是要看个人,很多人其实跟小帅帅一样,都会有这个念头,也有人会去质疑某人的能力)

 

posted @ 2014-08-11 10:19  oShine.Q  阅读(2459)  评论(9编辑  收藏  举报