Python实现抓取网页并且解析的实例


Posted in Python onSeptember 20, 2014

本文以实例形式讲述了Python实现抓取网页并解析的功能。主要解析问答与百度的首页。分享给大家供大家参考之用。

主要功能代码如下:

#!/usr/bin/python
#coding=utf-8

import sys 
import re
import urllib2
from urllib import urlencode
from urllib import quote
import time
maxline = 2000

wenda = re.compile("href=\"http://wenda.so.com/q/.+\?src=(.+?)\"")
baidu = re.compile("<a href=\"http://www.baidu.com/link\?url=.+\".*?>更多知道相关问题.*?</a>")
f1 = open("baidupage.txt","w")
f2 = open("wendapage.txt","w")

for line in sys.stdin:
  if maxline == 0:
    break
  query = line.strip();
  time.sleep(1);
  recall_url = "http://www.so.com/s?&q=" + query;
  response = urllib2.urlopen(recall_url);
  html = response.read();                                                   
  f1.write(html)
  m = wenda.search(html);
  if m:
    if m.group(1) == "110":
      print query + "\twenda\t0";
    else:
      print query + "\twenda\t1";
  else:
    print query + "\twenda\t0";
  recall_url = "http://www.baidu.com/s?wd=" + query +"&ie=utf-8";
  response = urllib2.urlopen(recall_url);
  html = response.read();
  f2.write(html)
  m = baidu.search(html);
  if m:
    print query + "\tbaidu\t1";
  else:
    print query + "\tbaidu\t0";
  maxline = maxline - 1;
f1.close()
f2.close()

希望本文所述对大家Python程序设计的学习有所帮助。

Python 相关文章推荐
Python之csv文件从MySQL数据库导入导出的方法
Jun 21 Python
pandas使用get_dummies进行one-hot编码的方法
Jul 10 Python
解决python selenium3启动不了firefox的问题
Oct 13 Python
python openpyxl使用方法详解
Jul 18 Python
Python如何调用JS文件中的函数
Aug 16 Python
Python爬虫库requests获取响应内容、响应状态码、响应头
Jan 25 Python
Python MySQL 日期时间格式化作为参数的操作
Mar 02 Python
Python文件操作及内置函数flush原理解析
Oct 13 Python
Python 将代码转换为可执行文件脱离python环境运行(步骤详解)
Jan 25 Python
详解win10下pytorch-gpu安装以及CUDA详细安装过程
Jan 28 Python
PyQt5通过信号实现MVC的示例
Feb 06 Python
Python&Matlab实现樱花的绘制
Apr 07 Python
跟老齐学Python之字典,你还记得吗?
Sep 20 #Python
跟老齐学Python之再深点,更懂list
Sep 20 #Python
跟老齐学Python之画圈还不简单吗?
Sep 20 #Python
跟老齐学Python之list和str比较
Sep 20 #Python
Python显示进度条的方法
Sep 20 #Python
python中对list去重的多种方法
Sep 18 #Python
Python中用Descriptor实现类级属性(Property)详解
Sep 18 #Python
You might like
ASP和PHP都是可以删除自身的
2007/04/09 PHP
用PHP实现浏览器点击下载TXT文档的方法详解
2013/06/02 PHP
PHP微信支付实例解析
2016/07/22 PHP
PHP 扩展Memcached命令用法实例总结
2020/06/04 PHP
对象的类型:本地对象(1)
2006/12/29 Javascript
JQuery动态创建DOM、表单元素的实现代码
2011/08/09 Javascript
Fixie.js 自动填充内容的插件
2012/06/28 Javascript
jquery入门—数据删除与隔行变色以及图片预览
2013/01/07 Javascript
javascript读取xml实现javascript分页
2013/12/13 Javascript
javascript间隔定时器(延时定时器)学习 间隔调用和延时调用
2014/01/13 Javascript
jquery中change()用法实例分析
2015/02/06 Javascript
jQuery实现定时读取分析xml文件的方法
2015/07/16 Javascript
js实现将选中值累加到文本框的方法
2015/08/12 Javascript
jQuery插件Timelinr 实现时间轴特效
2015/10/04 Javascript
JS实现网页标题栏显示当前时间和日期的完整代码
2015/11/02 Javascript
js自定义select下拉框美化特效
2016/05/12 Javascript
JS弹出新窗口被拦截的解决方法
2016/08/09 Javascript
js发送短信倒计时的简单实现方法
2016/09/08 Javascript
prototype与__proto__区别详细介绍
2017/01/09 Javascript
鼠标经过出现气泡框的简单实例
2017/03/17 Javascript
jQuery实现锚点向下平滑滚动特效示例
2017/08/29 jQuery
vue中如何让子组件修改父组件数据
2018/06/14 Javascript
js设计模式之单例模式原理与用法详解
2019/08/15 Javascript
vue-cli3使用mock数据的方法分析
2020/03/16 Javascript
js实现炫酷光感效果
2020/09/05 Javascript
[01:16:13]DOTA2-DPC中国联赛 正赛 SAG vs Dragon BO3 第一场 2月22日
2021/03/11 DOTA
详解python单例模式与metaclass
2016/01/15 Python
Python tornado队列示例-一个并发web爬虫代码分享
2018/01/09 Python
使用pandas实现csv/excel sheet互相转换的方法
2018/12/10 Python
python GUI库图形界面开发之PyQt5日期时间控件QDateTimeEdit详细使用方法与实例
2020/02/27 Python
世界闻名的衬衫制造商:Savile Row Company
2018/07/30 全球购物
台湾租车首选品牌:IWS艾维士租车
2019/05/03 全球购物
常用UNIX 命令(Linux的常用命令)
2015/12/26 面试题
2014年计划生育工作总结
2014/11/14 职场文书
挂职个人工作总结
2015/03/05 职场文书
项目验收申请报告
2015/05/15 职场文书