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结合selenium获取XX省交通违章数据的实现思路及代码
Jun 26 Python
python+django快速实现文件上传
Oct 24 Python
python 列表删除所有指定元素的方法
Apr 19 Python
Python使用progressbar模块实现的显示进度条功能
May 31 Python
python+pyqt5实现KFC点餐收银系统
Jan 24 Python
Python实现 PS 图像调整中的亮度调整
Jun 28 Python
python写日志文件操作类与应用示例
Jul 01 Python
Django基础知识 URL路由系统详解
Jul 18 Python
python查找特定名称文件并按序号、文件名分行打印输出的方法
Apr 24 Python
python 基于Apscheduler实现定时任务
Dec 15 Python
Python编写万花尺图案实例
Jan 03 Python
Python办公自动化之Excel(中)
May 24 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
php调用Google translate_tts api实现代码
2013/08/07 PHP
PHP实现的博客欢迎提示功能(很特别哦)
2014/06/05 PHP
php中Array2xml类实现数组转化成XML实例
2014/12/08 PHP
利用Laravel生成Gravatar头像地址的优雅方法
2017/12/30 PHP
PHP高并发和大流量解决方案整理
2021/03/09 PHP
JS 的应用开发初探(mootools)
2009/12/19 Javascript
js tab效果的实现代码
2009/12/26 Javascript
IE6背景图片不缓存问题解决方案及图片使用策略多个方法小结
2012/05/14 Javascript
模拟多级复选框效果的jquery代码
2013/08/13 Javascript
浅谈JavaScript中运算符的优先级
2015/07/07 Javascript
JavaScript头像上传插件源码分享
2016/03/29 Javascript
BootStrap实现文件上传并带有进度条效果
2017/09/11 Javascript
浅谈vue中数据双向绑定的实现原理
2017/09/14 Javascript
原生js实现仿window10系统日历效果的实例
2017/10/31 Javascript
JavaScript禁止右击保存图片,禁止拖拽图片的实现代码
2020/04/28 Javascript
[49:21]2018DOTA2亚洲邀请赛3月30日 小组赛B组 Effect VS iG
2018/03/31 DOTA
Flask入门教程实例:搭建一个静态博客
2015/03/27 Python
python opencv 读取图片 返回图片某像素点的b,g,r值的实现方法
2019/07/03 Python
Python API len函数操作过程解析
2020/03/05 Python
python列表删除和多重循环退出原理详解
2020/03/26 Python
解决django无法访问本地static文件(js,css,img)网页里js,cs都加载不了
2020/04/07 Python
python collections模块的使用
2020/10/16 Python
python 合并多个excel中同名的sheet
2021/01/22 Python
CSS3 background-image颜色渐变的实现代码
2018/09/13 HTML / CSS
详解前端HTML5几种存储方式的总结
2016/12/27 HTML / CSS
英国浴室洗脸盆购物网站:Click Basin
2018/06/08 全球购物
女士鞋子、包包和服装在线,第一款10美元:ShoeDazzle
2019/07/26 全球购物
大学生求职简历的自我评价
2013/10/14 职场文书
客服实习的个人自我鉴定
2013/10/20 职场文书
师范学院毕业生求职信范文
2013/12/26 职场文书
优秀中学生事迹材料
2014/01/31 职场文书
如何写自我评价?自我评价写什么好?
2014/03/14 职场文书
2014年监理个人工作总结
2014/12/11 职场文书
2014年信息中心工作总结
2014/12/17 职场文书
新员工试用期工作总结2015
2015/05/28 职场文书
2016党员发展对象培训心得体会
2016/01/08 职场文书