Python爬虫(一)爬百度贴吧
简单的GET请求:
# python2
import urllib2 response = urllib2.urlopen('http://www.baidu.com')
html = response.read()
print html req = urllib2.Request('http://www.baidu.com')
req.add_header('User-Agent', 'Chrome')
response = urllib2.urlopen(req)
print 'response headers:'
print response.info()
爬百度贴吧一个帖子:
# python2
# -*- coding: utf-8 -*- import urllib2
import string def crawl_tieba(base_url, begin_page, end_page):
for i in range(begin_page, end_page + 1):
print '正在下载第' + str(i) + '个网页...'
url = base_url + '?pn=' + str(i)
m = urllib2.urlopen(url).read()
file_name = string.zfill(i, 5) + '.html'
f = open(file_name, 'w+')
f.write(m)
f.close()
print 'done' crawl_tieba('http://tieba.baidu.com/p/4999189637', 1, 10)
WARNING:
如果没有第二行的注释,会报错:" SyntaxError: Non-ASCII character '\xe6' "。
爬糗百的帖子:
# python2
# -*- coding: utf-8 -*- import urllib2
import string
import re def crawl_qiubai(base_url, begin_page, end_page):
for i in range(begin_page, end_page + 1):
url = base_url + str(i)
user_agent = 'chrome'
headers = {'User-Agent': user_agent} print '正在下载网页' + str(i) + '...' req = urllib2.Request(url, headers=headers)
response = urllib2.urlopen(req).read()
pattern = re.compile(r'<div.*?class="content">.*?<span>(.*?)</span>', re.S)
features = re.findall(pattern, response) file_name = 'qiubai_' + string.zfill(i, 5) + '.txt'
f = open(file_name, 'w+')
for index in range(len(features)):
feature = features[index].replace('<br/>', '\n')
f.write('第' + str(index + 1) + '条:\n')
f.write(feature + '\n\n')
f.close()
print '网页' + str(i) + '下载完成'
print 'done' crawl_qiubai('http://www.qiushibaike.com/hot/page/', 1, 10)
参考资料:
Python爬虫入门教程
谈谈 Python 中的连接符(+、+=)
Python爬虫(一)爬百度贴吧的更多相关文章
- Python 爬虫实例(爬百度百科词条)
爬虫是一个自动提取网页的程序,它为搜索引擎从万维网上下载网页,是搜索引擎的重要组成.爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽取新的URL放入 ...
- Python爬虫(二)爬百度贴吧楼主发言
爬取电影吧一个帖子里的所有楼主发言: # python2 # -*- coding: utf-8 -*- import urllib2 import string import re class Ba ...
- 初次尝试python爬虫,爬取小说网站的小说。
本次是小阿鹏,第一次通过python爬虫去爬一个小说网站的小说. 下面直接上菜. 1.首先我需要导入相应的包,这里我采用了第三方模块的架包,requests.requests是python实现的简单易 ...
- Python爬虫之爬取慕课网课程评分
BS是什么? BeautifulSoup是一个基于标签的文本解析工具.可以根据标签提取想要的内容,很适合处理html和xml这类语言文本.如果你希望了解更多关于BS的介绍和用法,请看Beautiful ...
- [Python爬虫] Selenium爬取新浪微博客户端用户信息、热点话题及评论 (上)
转载自:http://blog.csdn.net/eastmount/article/details/51231852 一. 文章介绍 源码下载地址:http://download.csdn.net/ ...
- from appium import webdriver 使用python爬虫,批量爬取抖音app视频(requests+Fiddler+appium)
使用python爬虫,批量爬取抖音app视频(requests+Fiddler+appium) - 北平吴彦祖 - 博客园 https://www.cnblogs.com/stevenshushu/p ...
- 【Python必学】Python爬虫反爬策略你肯定不会吧?
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 正文 Python爬虫反爬策略三部曲,拥有这三步曲就可以在爬虫界立足了: ...
- Python爬虫之爬取站内所有图片
title date tags layut Python爬虫之爬取站内所有图片 2018-10-07 Python post 目标是 http://www.5442.com/meinv/ 如需在非li ...
- python爬虫实战---爬取大众点评评论
python爬虫实战—爬取大众点评评论(加密字体) 1.首先打开一个店铺找到评论 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手.很多已经 ...
随机推荐
- python3(二十四) subClas
""" 继承的多态 """ __author__ = 'shaozhiqi' # -----------------父类---------- ...
- hive常用函数二
逻辑运算: 1. 逻辑与操作: AND 语法: A AND B 操作类型:boolean 说明:如果A和B均为TRUE,则为TRUE:否则为FALSE.如果A为NULL或B为NULL,则为NULL 举 ...
- [一起面试AI]NO.9 如何判断函数凸或非凸
首先定义凸集,如果x,y属于某个集合M,并且所有的θx+(1-θ)f(y)也属于M,那么M为一个凸集.如果函数f的定义域是凸集,并且满足 f(θx+(1-θ)y)≤θf(x)+(1-θ)f(y) 则该 ...
- go1.13errors的用法
go1.13errors的用法 前言 基本用法 fmt.Errorf Unwrap errors.Is As 扩展 参考 go1.13errors的用法 前言 go 1.13发布了error的一些新的 ...
- Java面向对象的总结
面向对象的程序设计 1.面向对象 核心:以类的方式组织代码,以对象的方式封装数据 比喻:也就是说类是没有数据的,给了数据之后的类就是对象 封装 继承 多态 2.方法 a.一个方法只有一个返回值,只有一 ...
- 记录:如何使用ASP.NET Core和EnityFramework Core实现服务和数据分离
前情提要: 现有一个网站框架,包括主体项目WebApp一个,包含 IIdentityUser 接口的基架项目 A.用于处理用户身份验证的服务 AuthenticationService 位于命名空间B ...
- Thinking in Java,Fourth Edition(Java 编程思想,第四版)学习笔记(十四)之Type Information
Runtime type information (RTTI) allow you to discover and use type information while a program is ru ...
- niuke---勾股定理
勾股定理------: 当其中一个数a大于1并且为奇数时即a=2*n+1, 那么另外两个数分别为 b=2*n*n+2*n; c=b+1; 当a为大于等于4的偶数时,即a=2*n时,那么另外两个数分 ...
- 【题解】P2831 愤怒的小鸟 - 状压dp
P2831愤怒的小鸟 题目描述 \(Kiana\) 最近沉迷于一款神奇的游戏无法自拔. 简单来说,这款游戏是在一个平面上进行的. 有一架弹弓位于 \((0,0)\) 处,每次 \(Kiana\) 可以 ...
- python-用户输入和while循环
函数input() 比较大小要同类型: age=iput() 21 age=int(age) age>=10 true prompt = "If you tell us who you ...