简单的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爬虫(一)爬百度贴吧的更多相关文章

  1. Python 爬虫实例(爬百度百科词条)

    爬虫是一个自动提取网页的程序,它为搜索引擎从万维网上下载网页,是搜索引擎的重要组成.爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽取新的URL放入 ...

  2. Python爬虫(二)爬百度贴吧楼主发言

    爬取电影吧一个帖子里的所有楼主发言: # python2 # -*- coding: utf-8 -*- import urllib2 import string import re class Ba ...

  3. 初次尝试python爬虫,爬取小说网站的小说。

    本次是小阿鹏,第一次通过python爬虫去爬一个小说网站的小说. 下面直接上菜. 1.首先我需要导入相应的包,这里我采用了第三方模块的架包,requests.requests是python实现的简单易 ...

  4. Python爬虫之爬取慕课网课程评分

    BS是什么? BeautifulSoup是一个基于标签的文本解析工具.可以根据标签提取想要的内容,很适合处理html和xml这类语言文本.如果你希望了解更多关于BS的介绍和用法,请看Beautiful ...

  5. [Python爬虫] Selenium爬取新浪微博客户端用户信息、热点话题及评论 (上)

    转载自:http://blog.csdn.net/eastmount/article/details/51231852 一. 文章介绍 源码下载地址:http://download.csdn.net/ ...

  6. from appium import webdriver 使用python爬虫,批量爬取抖音app视频(requests+Fiddler+appium)

    使用python爬虫,批量爬取抖音app视频(requests+Fiddler+appium) - 北平吴彦祖 - 博客园 https://www.cnblogs.com/stevenshushu/p ...

  7. 【Python必学】Python爬虫反爬策略你肯定不会吧?

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 正文 Python爬虫反爬策略三部曲,拥有这三步曲就可以在爬虫界立足了: ...

  8. Python爬虫之爬取站内所有图片

    title date tags layut Python爬虫之爬取站内所有图片 2018-10-07 Python post 目标是 http://www.5442.com/meinv/ 如需在非li ...

  9. python爬虫实战---爬取大众点评评论

    python爬虫实战—爬取大众点评评论(加密字体) 1.首先打开一个店铺找到评论 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手.很多已经 ...

随机推荐

  1. Chrome浏览器架构

    通用浏览器架构 它可以是一个具有许多不同线程的进程,也可以是具有几个通过IPC进行通信的多个线程的进程. 一个具有许多不同线程的进程 通过IPC进行通信的多个线程的进程 注意 这些不同的体系结构是实现 ...

  2. C语言冒泡排序法分析及代码实现

    冒泡排序法: 所谓冒泡排序法,就是对一组数字进行从大到小或者从小到大排序的一种算法.具体方法是,相邻数值两两交换.从第一个数值开始,如果相邻两个数的排列顺序与我们的期望不同,则将两个数的位置进行交换( ...

  3. react性能优化最佳实践

    1.PureComponent 的使用场景 PureComponent 和 Component 的区别是,PureComponent 自带 shouldComponentUpdate 生命周期函数,会 ...

  4. 如何假装黑客,使用python去批量破解朋友的网站密码

    前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取http ...

  5. L11注意力机制和Seq2seq模型

    注意力机制 在"编码器-解码器(seq2seq)"⼀节⾥,解码器在各个时间步依赖相同的背景变量(context vector)来获取输⼊序列信息.当编码器为循环神经⽹络时,背景变量 ...

  6. F - Select Half dp

    题目大意:从n个数里边选n/2个数,问和最大是多少. 题解:这是一个比较有意思的DP,定义状态dp[i][1],表示选了第i个数的最优状态,dp[i][0]表示没有选第i个数的最优状态. 状态是如何转 ...

  7. D - Fox And Two Dots DFS

    Fox Ciel is playing a mobile puzzle game called "Two Dots". The basic levels are played on ...

  8. 4.加密与token(node+express)

    一. 敏感数据加密1.安装并引入中间件     npm install utility     const utils = require('utility')2.加密方法     function ...

  9. 7.关于一些dom&&获取元素

    1. 测试点击的是否是span 标签 <span onClick={this.select.bind(this)}>点击</span>   select( e ){  cons ...

  10. Joomla 3.4.6 Remote Code Execution漏洞复现

    0x00:简介 Joomla是一套全球有名的CMS系统. Joomla基于PHP语言加上MySQL数据库所开发出来的WEB软件系统,目前最新版本是3.9.12. Joomla可以在多种不同的平台上部署 ...