Python实现抓取百度搜索结果页的网站标题信息


Posted in Python onJanuary 22, 2015

Python实现抓取百度搜索结果页的网站标题信息

比如,你想采集标题中包含“58同城”的SERP结果,并过滤包含有“北京”或“厦门”等结果数据。

该Python脚本主要是实现以上功能。

其中,使用BeautifulSoup来解析HTML,可以参考我的另外一篇文章:Windows8下安装BeautifulSoup

代码如下:

__author__ = '曾是土木人'

# -*- coding: utf-8 -*-

#采集SERP搜索结果标题

import urllib2

from bs4 import BeautifulSoup

import time

#写文件

def WriteFile(fileName,content):

    try:

        fp = file(fileName,"a+")

        fp.write(content + "\r")

        fp.close()

    except:

        pass
#获取Html源码

def GetHtml(url):

    try:

        req = urllib2.Request(url)

        response= urllib2.urlopen(req,None,3)#设置超时时间

        data    = response.read().decode('utf-8','ignore')

    except:pass

    return data
#提取搜索结果SERP的标题

def FetchTitle(html):

    try:

        soup = BeautifulSoup(''.join(html))

        for i in soup.findAll("h3"):

            title = i.text.encode("utf-8")


 



 if any(str_ in title for str_ in ("北京","厦门")):




  continue

            else:

                print title

            WriteFile("Result.txt",title)

    except:

        pass
keyword = "58同城"

if __name__ == "__main__":

    global keyword

    start = time.time()

    for i in range(0,8):

        url = "http://www.baidu.com/s?wd=intitle:"+keyword+"&rn=100&pn="+str(i*100)

        html = GetHtml(url)

        FetchTitle(html)

        time.sleep(1)

    c = time.time() - start

    print('程序运行耗时:%0.2f 秒'%(c))
Python 相关文章推荐
python利用hook技术破解https的实例代码
Mar 25 Python
python使用WMI检测windows系统信息、硬盘信息、网卡信息的方法
May 15 Python
Python装饰器使用实例:验证参数合法性
Jun 24 Python
Python使用pylab库实现画线功能的方法详解
Jun 08 Python
Python 网页解析HTMLParse的实例详解
Aug 10 Python
Python实现定时备份mysql数据库并把备份数据库邮件发送
Mar 08 Python
对numpy Array [: ,] 的取值方法详解
Jul 02 Python
python 判断矩阵中每行非零个数的方法
Jan 26 Python
Python实现微信中找回好友、群聊用户撤回的消息功能示例
Aug 23 Python
Python爬虫爬取、解析数据操作示例
Mar 27 Python
PyQt5实现仿QQ贴边隐藏功能的实例代码
May 24 Python
python获取时间戳的实现示例(10位和13位)
Sep 23 Python
Python中使用异常处理来判断运行的操作系统平台方法
Jan 22 #Python
Python实现把utf-8格式的文件转换成gbk格式的文件
Jan 22 #Python
python中实现php的var_dump函数功能
Jan 21 #Python
Python实现获取网站PR及百度权重
Jan 21 #Python
Python实现抓取页面上链接的简单爬虫分享
Jan 21 #Python
Python中多线程及程序锁浅析
Jan 21 #Python
Python实现的多线程端口扫描工具分享
Jan 21 #Python
You might like
php隐藏实际地址的文件下载方法
2015/04/18 PHP
php readfile()修改文件上传大小设置
2017/08/11 PHP
原生JS实现Ajax通过POST方式与PHP进行交互的方法示例
2018/05/12 PHP
php使用curl伪造浏览器访问操作示例
2019/09/30 PHP
javascript的函数
2007/01/31 Javascript
jQuery队列控制方法详解queue()/dequeue()/clearQueue()
2010/12/02 Javascript
jQuery学习笔记之控制页面实现代码
2012/02/27 Javascript
Javascript图像处理—为矩阵添加常用方法
2012/12/27 Javascript
利用js实现在浏览器状态栏显示访问者在本页停留的时间
2013/12/29 Javascript
JS图片自动轮换效果实现思路附截图
2014/04/30 Javascript
jquery+html5制作超酷的圆盘时钟表
2015/04/14 Javascript
jQuery插件制作之全局函数用法实例
2015/06/01 Javascript
80%应聘者都不及格的JS面试题
2017/03/21 Javascript
Angular2生命周期钩子函数的详细介绍
2017/07/10 Javascript
Node.js微信 access_token ( jsapi_ticket ) 存取与刷新的示例
2017/09/30 Javascript
Node中使用ES6语法的基础教程
2018/01/05 Javascript
前端防止用户重复提交js实现代码示例
2018/09/07 Javascript
微信小程序wx:for循环的实例详解
2018/10/07 Javascript
vue组件中传值EventBus的使用及注意事项说明
2020/11/16 Javascript
Python中在for循环中嵌套使用if和else语句的技巧
2016/06/20 Python
Python MySQLdb 使用utf-8 编码插入中文数据问题
2018/03/13 Python
用TensorFlow实现lasso回归和岭回归算法的示例
2018/05/02 Python
python3实现点餐系统
2019/01/24 Python
利用python实现冒泡排序算法实例代码
2019/12/01 Python
keras自定义回调函数查看训练的loss和accuracy方式
2020/05/23 Python
浅谈多卡服务器下隐藏部分 GPU 和 TensorFlow 的显存使用设置
2020/06/30 Python
numpy中生成随机数的几种常用函数(小结)
2020/08/18 Python
英国最大的网上药品商店:Chemist Direct
2017/12/16 全球购物
房地产管理毕业生自荐信
2013/11/04 职场文书
写给学生的新学期寄语
2014/01/18 职场文书
公司委托书格式范文
2014/04/04 职场文书
村党的群众路线教育实践活动工作总结
2014/10/25 职场文书
2014年高二班主任工作总结
2014/12/16 职场文书
感谢信怎么写
2015/01/21 职场文书
2016感恩母亲节校园广播稿
2015/12/17 职场文书
详解Python函数print用法
2021/06/18 Python