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下的Mysql模块MySQLdb安装详解
Apr 09 Python
windows下wxPython开发环境安装与配置方法
Jun 28 Python
Python中使用md5sum检查目录中相同文件代码分享
Feb 02 Python
详解Python中的正则表达式的用法
Apr 09 Python
python中dir函数用法分析
Apr 17 Python
简介Python设计模式中的代理模式与模板方法模式编程
Feb 02 Python
python 提取tuple类型值中json格式的key值方法
Dec 31 Python
Python多线程及其基本使用方法实例分析
Oct 29 Python
Python Web静态服务器非堵塞模式实现方法示例
Nov 21 Python
Python爬虫谷歌Chrome F12抓包过程原理解析
Jun 04 Python
通过Python实现Payload分离免杀过程详解
Jul 13 Python
Python实现文字pdf转换图片pdf效果
Apr 03 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 无限极分类
2008/03/27 PHP
PHP 之Section与Cookie使用总结
2012/09/14 PHP
简单的php新闻发布系统教程
2014/05/09 PHP
php抛出异常与捕捉特定类型的异常详解
2016/10/26 PHP
详解PHP swoole process的使用方法
2017/08/26 PHP
Windows上php5.6操作mongodb数据库示例【配置、连接、获取实例】
2019/02/13 PHP
制作特殊字的脚本
2006/06/26 Javascript
js数据验证集合、js email验证、js url验证、js长度验证、js数字验证等简单封装
2010/05/15 Javascript
JavaScript中获取元素索引的函数
2010/09/10 Javascript
jquery中通过过滤器获取表单元素的实现代码
2011/07/05 Javascript
XMLHttpRequest处理xml格式的返回数据(示例代码)
2013/11/21 Javascript
JavaScript中的变量定义与储存介绍
2014/12/31 Javascript
js+CSS实现弹出居中背景半透明div层的方法
2015/02/26 Javascript
jQuery插件HighCharts实现2D柱状图、折线图的组合多轴图效果示例【附demo源码下载】
2017/03/09 Javascript
Vue2.0权限树组件实现代码
2017/08/29 Javascript
解决使用Vue.js显示数据的时,页面闪现原始代码的问题
2018/02/11 Javascript
vue-router的使用方法及含参数的配置方法
2018/11/13 Javascript
vue 解决provide和inject响应的问题
2020/11/12 Javascript
Python基础知识_浅谈用户交互
2017/05/31 Python
Python实现读取及写入csv文件的方法示例
2018/01/12 Python
Python描述符descriptor使用原理解析
2020/03/21 Python
Python参数传递及收集机制原理解析
2020/06/05 Python
选购世界上最好的美妆品:Cult Beauty
2017/11/03 全球购物
英国的屈臣氏:Boots博姿
2017/12/23 全球购物
联想马亚西亚官方网站:Lenovo Malaysia
2018/09/19 全球购物
英国网上自行车商店:Tredz Bikes
2019/10/29 全球购物
哪些情况下不应该使用索引
2015/07/20 面试题
介绍一下MD5加密算法
2016/11/12 面试题
集体生日活动方案
2014/08/18 职场文书
企业贷款委托书格式
2014/09/12 职场文书
教师批评与自我批评(群众路线)
2014/10/15 职场文书
2014财产信托协议书范本
2014/11/18 职场文书
费城故事观后感
2015/06/10 职场文书
初三化学教学反思
2016/02/22 职场文书
Innodb存储引擎中的后台线程详解
2022/04/03 MySQL
Win11电脑显示本地时间与服务器时间不一致怎么解决?
2022/04/05 数码科技