目录

十,将cookie对象保存为本地文件并读取

十一,URLError的使用

十二,requests库的使用

1,pip install requests

2,requests请求方法大全

3,requests的get方法使用

4,requests的post方法使用

5,requests代理proxy的使用方法

6,requests中请求方法的timeout参数

7,requests中session自动保存cookie

8,requests中忽略SSL验证

9,requests中response对象的一些方法简介


十,将cookie对象保存为本地文件并读取

from urllib.request import Request, build_opener, HTTPCookieProcessor
from fake_useragent import UserAgent
from http.cookiejar import MozillaCookieJarurl = 'https://www.baidu.com/s?wd=python'
headers = {'User-Agent': UserAgent().chrome,
}
def let_cookie_to_file():cookie = MozillaCookieJar()  # 创建一个cookie对象,他会自动记录各种cookie信息req = Request(url=url, headers=headers, )opener = build_opener(HTTPCookieProcessor(cookiejar=cookie))resp = opener.open(req)cookie.save('cookie.txt', ignore_discard=True, ignore_expires=True)  # 保存cookie对象print(resp.getcode())def get_cookie_from_file():cookie = MozillaCookieJar()  # 创建一个cookie对象cookie.load('cookie.txt', ignore_discard=True, ignore_expires=True)req = Request(url=url, headers=headers, )opener = build_opener(HTTPCookieProcessor(cookiejar=cookie))resp = opener.open(req)print(resp.getcode())if __name__ == '__main__':# let_cookie_to_file()get_cookie_from_file()

十一,URLError的使用

URLError本质上是一个异常类。产生URLError的原因有:主机没有联网,服务器不存在,找不到服务器(实际上服务器存在)等。

from urllib.request import urlopen, Request
from fake_useragent import UserAgent
from urllib.error import URLErrorurl = 'http://gzsx.cooco.net.cn/tweest/'
url = 'http://jccndk.com'
headers = {'User-Agent': UserAgent().chrome,
}
req = Request(url=url, headers=headers)
try:resp = urlopen(req)print(resp.read().decode())
except URLError as e:print(e)if e.args:print(e.args[0].errno)else:print('错误404')

十二,requests库的使用

1,pip install requests

由于requests库是第三方库,需要pip安装。

2,requests请求方法大全

3,requests的get方法使用

例子1:

import requests
from fake_useragent import UserAgentheaders = {'User-Agent': UserAgent().chrome,
}def no_args():url = 'https://hao.360.com/?h_lnk'resp = requests.get(url=url)print(resp.text)def has_args(args: dict):url = 'https://www.baidu.com/?'resp = requests.get(url=url, params=args, headers=headers)print(resp.text)if __name__ == '__main__':# no_args()has_args({'wd': 'python'})

4,requests的post方法使用

例子1:

import requests
from fake_useragent import UserAgentheaders = {'User-Agent': UserAgent().chrome,
}args = {'searchword': '卫生'
}def get():url = 'https://www.21wecan.com/rcwjs/searchlist.jsp'resp = requests.post(url=url, headers=headers, data=args)print(resp.text)if __name__ == '__main__':get()

5,requests代理proxy的使用方法

例子1:

import requests
from fake_useragent import UserAgenturl = 'http://httpbin.org/get'
headers = {'User-Agent': UserAgent().chrome,
}
proxy = {# 格式:'type':'type://username:password@ip:port''http': 'http://183.239.38.216:9091'
}
resp = requests.get(url=url, headers=headers, proxies=proxy)
print(resp.text)

6,requests中请求方法的timeout参数

超过这个参数,则会报错。

resp = session.get(url=url, headers=headers, params={'wd': 'python'},timeout=5)

7,requests中session自动保存cookie

session的作用是保持一个持续的会话,在内存当中记录一个网址的cookie,以供后续代码使用。

import requestss = requests.Session()
# 用session对象发出get请求,设置cookies
resp = s.get('http://httpbin.org/cookies/set/sessioncookie/123456789')
print(resp.text)

8,requests中忽略SSL验证

细节在这里。

import requests
import warnings
from requests.packages import urllib3# 方式一:关闭警告
urllib3.disable_warnings()
warnings.filterwarnings("ignore")# 方式二,关闭证书,verify=False
res = requests.get(url="https://www.12306.cn",verify=False)  #不验证证书,报警告,返回200
print(res.content.decode("utf-8"))s = requests.Session()
# 用session对象发出get请求,设置cookies
resp = s.get('http://httpbin.org/cookies/set/sessioncookie/123456789')
print(resp.text)

9,requests中response对象的一些方法简介

获取并保存cookie信息,需要使用response.cookie属性,他是一个字典。

python爬虫(3)相关推荐

  1. 关于Python爬虫原理和数据抓取1.1

    为什么要做爬虫? 首先请问:都说现在是"大数据时代",那数据从何而来? 企业产生的用户数据:百度指数.阿里指数.TBI腾讯浏览指数.新浪微博指数 数据平台购买数据:数据堂.国云数据 ...

  2. python爬虫之Scrapy框架的post请求和核心组件的工作 流程

    python爬虫之Scrapy框架的post请求和核心组件的工作 流程 一 Scrapy的post请求的实现 在爬虫文件中的爬虫类继承了Spider父类中的start_urls,该方法就可以对star ...

  3. python爬虫抓取信息_python爬虫爬取网上药品信息并且存入数据库

    我最近在学习python爬虫,然后正好碰上数据库课设,我就选了一个连锁药店的,所以就把网上的药品信息爬取了下来. 1,首先分析网页 2,我想要的是评论数比较多的,毕竟好东西大概是买的人多才好.然后你会 ...

  4. python爬虫案例_推荐上百个github上Python爬虫案例

    现在学生都对爬虫感兴趣,这里发现一些好的github开源的代码,分享给各位 1.awesome-spider 该网站提供了近上百个爬虫案例代码,这是ID为facert的一个知乎工程师开源的,star6 ...

  5. Python培训分享:python爬虫可以用来做什么?

    爬虫又被称为网络蜘蛛,它可以抓取我们页面的一些相关数据,近几年Python技术的到来,让我们对爬虫有了一个新的认知,那就是Python爬虫,下面我们就来看看python爬虫可以用来做什么? Pytho ...

  6. 玩转 Python 爬虫,需要先知道这些

    作者 | 叶庭云 来源 | 修炼Python 头图 | 下载于视觉中国 爬虫基本原理 1. URI 和 URL URI 的全称为 Uniform Resource Identifier,即统一资源标志 ...

  7. 买不到口罩怎么办?Python爬虫帮你时刻盯着自动下单!| 原力计划

    作者 | 菜园子哇 编辑 | 唐小引 来源 | CSDN 博客 马上上班了,回来的路上,上班地铁上都是非常急需口罩的. 目前也非常难买到正品.发货快的口罩,许多药店都售完了. 并且,淘宝上一些新店口罩 ...

  8. 一个月入门Python爬虫,轻松爬取大规模数据

    如果你仔细观察,就不难发现,懂爬虫.学习爬虫的人越来越多,一方面,互联网可以获取的数据越来越多,另一方面,像 Python这样一个月入门Python爬虫,轻松爬的编程语言提供越来越多的优秀工具,让爬虫 ...

  9. Python爬虫获取文章的标题及你的博客的阅读量,评论量。所有数据写入本地记事本。最后输出你的总阅读量!

    Python爬虫获取文章的标题及你的博客的阅读量,评论量.所有数据写入本地记事本.最后输出你的总阅读量!还可以进行筛选输出!比如阅读量大于1000,之类的! 完整代码在最后.依据阅读数量进行降序输出! ...

  10. Python爬虫破解有道翻译

    有道翻译是以异步方式实现数据加载的,要实现对此类网站的数据抓取,其过程相对繁琐,本节我以有道翻译为例进行详细讲解. 通过控制台抓包,我们得知了 POST 请求的参数以及相应的参数值,如下所示: 图1: ...

最新文章

  1. 每天导航超4亿公里,百度地图整合AI功能
  2. hdu1305 字典树水题
  3. 题解 P1876 【开灯】
  4. mysql数据恢复时显示多线程恢复_MySQL多线程备份恢复工具mydumper,myloder
  5. spring 启动加载数据_12个很棒的Spring数据教程来启动您的数据项目
  6. GridView 利用AspNetPager 分页时的自动编号
  7. vue的视图化创建项目_vue-cli3用图形化的方式创建项目
  8. linux部署jar项目报错_Spring boot项目部署linux系统tomcat报错解决办法
  9. mysql数据库如何配置服务_MySQL服务如何实现安装及配置
  10. Spark源码分析之TaskSetManager分析
  11. shell脚本文件中ll提示找不到命令
  12. 为什么每个邮件收到后都会有一个htm的附件_职场邮件:领导、同事都喜欢收到的邮件丨邮件技巧...
  13. RTSP的音频视频要各SETUP一次
  14. java--实现j2cache二级缓存
  15. 计算机专业英文版模板简历,计算机专业英文简历模板
  16. 计算机专业读研期间的规划,计算机专业研究生的读研规划
  17. 使用java进行远程控制,java实现远程控制
  18. ios设置导航条背景图片
  19. 【模块化那些事】 拆散的模块化
  20. Object-Oriented Programming Summary Ⅱ

热门文章

  1. 解决服务无法启动,控制台报Description:Web server failed to start. Port 8080 was already in use.
  2. vellum cloth
  3. linux系统运维复习汇总1
  4. 关于c#读取excel数据。
  5. html 内容的高度设定,让文字不超过固定宽度和高度怎么设置?
  6. Qt/C++编写的项目作品32-定制化安装包工具(雨田哥作品)
  7. java8之stream【一】steam的说明以及创建
  8. 微信小程序canvas实现画图可以恢复上一步操作以及从头演示(有效果图)
  9. PaintCOST.Estimator.for.Excel.v6.01油漆工程成本估算软件
  10. 【Nodejs】登录鉴权-Cookie