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,掌握了基本语法过后,不知道在哪里寻找案例上手.很多已经 ...
随机推荐
- Java Random 随机数
package myrandom; import java.util.Random; /* * Random:用于产生随机数 * * 使用步骤: * A:导包 * import java.util.R ...
- es分页条数限制
"error": { "root_cause": [ { "type": "query_phase_execution_excep ...
- EL表达式---自定义函数(转)
EL表达式---自定义函数(转) 有看到一个有趣的应用了,转下来,呵呵!! 1.定义类MyFunction(注意:方法必须为 public static) package com.tgb.jstl; ...
- [算法]Miller-Robbin素数判定
目录 一.实现原理 二.应用 判断一个正整数是否为素数 三.小结 一.实现原理 我们以前都是怎么判断素数的呢: 试除法: 若一个正整数N为合数,则存在一个能整除N的数k,其中\(2\leqslant ...
- PHP常量:JSON_UNESCAPED_UNICODE
函数: json_encode() - 对变量进行 JSON 编码 说明: json_encode ( mixed $value [, int $options = 0 [, int $depth = ...
- 前后端分离下用jwt做用户认证
0 前后端分离下的用户信息认证 前端使用Vue+axios,后端使用SpringBoot+SpringSecurity. 为了解决http无状态的问题,我采用jwt(json web token)保存 ...
- Redis安装部署(一主二从三哨兵)
需求:根据当前客户的生产环境,模拟安装部署Redis的测试环境,方便后续的功能测试. 1.准备工作 2.安装编译Redis 3.Redis运行环境配置 4.Redis启动和关闭 1.准备工作 Redi ...
- Springboot:员工管理之删除员工及退出登录(十(9))
springboot2.2.6 delete请求报错,降至2.1.11功能可用 原因未知 构建员工删除请求 com\springboot\controller\EmployeeController.j ...
- java IO流 之 字节流与字符流
其实学习了file文件基础类,后面的字节流和字符流都特别简单了,首先需要知道字节流和字符流的区别 字节流: 用来传送图片.各种文件.大文件.文本都是通过字节流进行传输的. 字符流: 只能读取文本信息 ...
- 在dwr的调用类里获取请求信息
在dwr的调用类里获取请求的相关信息HttpSession session = WebContextFactory.get().getSession();HttpServletResponse res ...