Python简单爬虫第一蛋!

Python爬虫简单教程

一、准备工作:

①python 3.x 的环境

②Windows 10 操作系统

③能连接上互联网

二、注意事项:

①仅供参考学习,如有转载请注明出处!

②获取的数据不能用于商业应用,仅供学习。

③注意动手实践。

第一讲:第一个模块(requests)的使用教程

  首先,需要安装一下requests 模块,这个在系统命令行(cmd)中用

  pip install requests 命令完成。(这是很基本的操作,直接跳过哈)

  然后打开我们的IDE(这里我用的是Spyder,也可以用Python自带的Python shell来实现)。

  我在IPython中输入:

  import requests

  help(requests)

  以此来检查requests模块的安装是否成功,最终看到requests模块的版本(VERSION)是2.18.4。

  好,现在我们就来学习requests模块中的一个重要的函数:

  requests.get()

  例子:

  r = requests.get(‘http://www.hao123.com‘)

  r是函数返回的一个Response对象,基于该类型的对象,我们还有更多的函数可以调用,现在我们先学上面的get()方法。

  get()方法的参数很简单,就是一个url链接的字符串,这里选取好123网页导航来作为我们爬取的对象。

  接下来我们加快步伐了,哈哈哈!

  Resoponse对象的status_code属性可以返回获取网页的结果,text属性可以查看返回的内容,也就是我们爬取到的内容。

  看图:

  200表示成功,下面就打印出前500个字符的内容。

  已经跨出了我们的第一大步了,哈哈哈。

  下面整理出Requests模块的主要方法:


方法


说明


requests.request()


构造一个请求,支持下面方法的使用


requests.get()


获得HTML网页的主要方法


requests.head()


获取HTML网页头信息的方法


requests.post()


向HTML网页提交POST请求的方法


requests.put()


向HTML网页提交PUT请求的方法


requests.patch()


向HTML网页提交局部修改请求


requests.delete()


向HTML网页提交删除请求

  下面详细说明requests.get()方法

  requests.get(url,params=None,**kwargs)

  url:获取页面的url链接

  params:url中额外参数,可选

  **kwargs:12个控制访问的参数

  这些先留个悬念,日后再讲。

  下面介绍一个爬取网页的通用代码框架:

  看代码:

 1 ‘‘‘通用代码框架‘‘‘
 2
 3 import requests
 4
 5
 6
 7 def getHTML_Text(url):
 8
 9     try:
10
11         r = requests.get(url,timeout = 20)
12
13         r.raise_for_status() #如果状态不是200,则产生异常
14
15         r.encoding = r.apparent_encoding
16
17         return r.text
18
19     except:
20
21         return ‘产生异常‘
22
23
24
25 if __name__ == ‘__main__‘:
26
27     url = ‘http://www.hao123.com‘
28
29     print(getHTML_Text(url))

  r.raise_for_status() 是判定网页是否链接成功,如果是200 则可以进行下一步,如果不是200,则产生异常,进行异常处理。

  最后讲一下r.encoding = r.apparent_encoding 语句

  r.encoding 是从HTTP header中猜测的响应内容编码方式。

  r.apparent_encoding 是从内容分析出的响应内容编码方式。

  为了避免出现编码错误问题,就用该语句设置一下响应内容的编码形式,return r.text才能显示出正确的内容,否则是乱码。

  好了,今天的教程先到这里。下期见!

原文地址:https://www.cnblogs.com/shuaiqi-XCJ/p/8977128.html

时间: 2024-11-07 15:06:33

Python简单爬虫第一蛋!的相关文章

Python简单爬虫第二蛋!

第二讲:几个爬取网页的实例 本讲通过几个实例来讲述一下爬取网页的基本操作,同时也复习一下上节课的内容,相信还记得通用的代码框架吧,本讲还需要用到它,哈哈哈,是不能忘记滴. 好了,开始! 第一个实例: 1 '''小说爬取''' 2 3 import requests 4 5 6 7 def getHTML_Text(url): 8 9 try: 10 11 r = requests.get(url,timeout = 20) 12 13 r.raise_for_status() #如果状态不是20

Python简单爬虫第六蛋!(完结撒花)

第六讲: 今天我们来实战一个项目,我本人比较喜欢看小说,有一部小时叫<圣墟>不知道大家有没有听说过,个人觉得还是不错的,现在联网的时候,都可以随时随地用手机打开浏览器搜索查看,但是有时候也会遇到没有网络的情况,这个就很扎心了,有什么办法呢?所以这个项目基于这么一个现实背景来分析实现一下,把我们前几次讲到一些技术方法都运用一遍. (有人可能会说直接下载一个txt格式的小说文本文件不就好了,虽然是挺方便的,但是懒惰是不好的习惯,而且也没有运用到所学的知识,那么我们何必要学习呢?为什么要学,看完实例

Python 简单爬虫

? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 import os import time import webbrowser as web import random count = random.randint(20,40) j = 0 while j < count:     i = 0     while i <= 5:         web.open_new_tab('http://www.cnblogs.com/evilxr/p/37642

Python简单爬虫入门二

接着上一次爬虫我们继续研究BeautifulSoup Python简单爬虫入门一 上一次我们爬虫我们已经成功的爬下了网页的源代码,那么这一次我们将继续来写怎么抓去具体想要的元素 首先回顾以下我们BeautifulSoup的基本结构如下 #!/usr/bin/env python # -*-coding:utf-8 -*- from bs4 import BeautifulSoup import requests headers = { 'User-Agent':'Mozilla/5.0 (Win

Python 简单爬虫案例

Python 简单爬虫案例 import requests url = "https://www.sogou.com/web" # 封装参数 wd = input('enter a word') param = { 'query':wd } response = requests.get(url=url,params=param) page_text = response.content fileName = wd+'.html' with open(fileName,'wb') as

python简单爬虫

爬虫真是一件有意思的事儿啊,之前写过爬虫,用的是urllib2.BeautifulSoup实现简单爬虫,scrapy也有实现过.最近想更好的学习爬虫,那么就尽可能的做记录吧.这篇博客就我今天的一个学习过程写写吧. 一  正则表达式 正则表达式是一个很强大的工具了,众多的语法规则,我在爬虫中常用的有: . 匹配任意字符(换行符除外) * 匹配前一个字符0或无限次 ? 匹配前一个字符0或1次 .* 贪心算法 .*? 非贪心算法 (.*?) 将匹配到的括号中的结果输出 \d 匹配数字 re.S 使得.

python 简单爬虫(beatifulsoup)

---恢复内容开始--- python爬虫学习从0开始 第一次学习了python语法,迫不及待的来开始python的项目.首先接触了爬虫,是一个简单爬虫.个人感觉python非常简洁,相比起java或其他面向对象的编程语言,动态语言不需要声明函数或变量类型.python有20年的发展历史,以简洁高效闻名,python最初只是一个马戏团的名字,它的哲学是'用一种方法完成一件事情'.我第一次使用python时就被它的简洁高效迷住了,相比起c++和java,他简直太棒了.而且现阶段的大数据和人工智能领

python 简单爬虫diy

简单爬虫直接diy, 复杂的用scrapy import urllib2 import re from bs4 import BeautifulSoap req = urllib2.Request(url, headers={'User-Agent' : "Magic Browser"}) webpage= urllib2.urlopen(req) soap = BeautifulSoap(webpage.read()) ...

python简单爬虫的实现

python强大之处在于各种功能完善的模块.合理的运用可以省略很多细节的纠缠,提高开发效率. 用python实现一个功能较为完整的爬虫,不过区区几十行代码,但想想如果用底层C实现该是何等的复杂,光一个网页数据的获得就需要字节用原始套接字构建数据包,然后解析数据包获得,关于网页数据的解析,更是得喝一壶. 下面具体分析分析用python如何构建一个爬虫. 0X01  简单的爬虫主要功能模块 URL管理器:管理待抓取URL集合和已抓取URL集合,防止重复抓取.防止循环抓取.主要需要实现:添加新URL到