python爬虫有多少种方式_python爬虫—–Python访问http的几种方式

爬取页面数据,我们需要访问页面,发送http请求,以下内容就是Python发送请求的几种简单方式:

会使用到的库  urllib   requests

1.urlopen

import urllib.request

import urllib.parse

import urllib.error

import socket

data = bytes(urllib.parse.urlencode({“hello”: “world”}),encoding=’utf8′)

try:

response = urllib.request.urlopen(‘http://httpbin.org/post’,data=data,timeout=10)

print(response.status)

print(response.read().decode(‘utf-8’))

except urllib.error.URLError as e:

if isinstance(e.reason, socket.timeout):

print(“TIMEOUT”)

2.requests

用到requests中的get  post  delete  put 方法访问请求  这种比一简单一些

每个方法有相应的参数列表,比如 get  params参数   proxies:设置代理  auth: 认证  timeout :超时时间 等

import requests

ico = requests.get(“https://github.com/favicon.ico”)

with open(“favicon.ico”, “wb”) as file:

file.write(ico.content)

3.Request Session

from requests import Session, Request

url = “https://home.cnblogs.com/u/qiutian-guniang/”

s = Session()

req = Request(‘GET’, url=url, headers=header)

pred = s.prepare_request(req)

r = s.send(pred)

print(r.text)

某些网页会禁止抓取数据 我们可以 通过设置User-Agent来设置 使用cookies来保持登录的访问状态例如:以下的cookie内容可以通过在F12控制台获取 复制粘贴 放入headers中

python爬虫有多少种方式_python爬虫-----Python访问http的几种方式

cookies = “_gat=1”

headers = {

“Cookie”: cookies,

‘User-Agent’: ‘Mozilla/5.0 (Windows NT 10.0; Win64; ‘

‘x64) AppleWebKit/537.36 (KHTML, like Gecko) ‘

‘Chrome/68.0.3440.106 Safari/537.36’

}

python爬虫解析页面数据的三种方式

re模块 re.S表示匹配单行 re.M表示匹配多行 使用re模块提取图片url,下载所有糗事百科中的图片 普通版 import requests import re import os if not …

Python爬虫突破封禁的6种常见方法

转 Python爬虫突破封禁的6种常见方法 2016年08月17日 22:36:59 阅读数:37936 在互联网上进行自动数据采集(抓取)这件事和互联网存在的时间差不多一样长.今天大众好像更倾向于用 …

命令行运行Python脚本时传入参数的三种方式

原文链接:命令行运行Python脚本时传入参数的三种方式(原文的几处错误在此已纠正) 如果在运行python脚本时需要传入一些参数,例如gpus与batch_size,可以使用如下三种方式. pyth …

Servlet访问路径的两种方式、Servlet生命周期特点、计算服务启动后的访问次数、Get请求、Post请求

Servlet访问路径的两种方式: 1:注解 即在Servlet里写一个@WebServlet @WebServlet(“/myServlet”) 2:配置web.xml < …

JPA访问数据库的几种方式

JPA访问数据库的几种方式 本文为原创,转载请注明出处:https://www.cnblogs.com/supiaopiao/p/10901793.html 1. Repository 1.1. 通过 …

Python 与 C/C++ 交互的几种方式

python作为一门脚本语言,其好处是语法简单,很多东西都已经封装好了,直接拿过来用就行,所以实现同样一个功能,用Python写要比用C/C++代码量会少得多.但是优点也必然也伴随着缺点(这是肯定的, …

python 零散记录(五) import的几种方式 序列解包 条件和循环 强调getattr内建函数

用import关键字导入模块的几种方式: #python是自解释的,不必多说,代码本身就是人可读的 import xxx from xxx import xxx from xxx import xx1 …

Python爬虫——Python 岗位分析报告

前两篇我们分别爬取了糗事百科和妹子图网站,学习了 Requests, Beautiful Soup 的基本使用.不过前两篇都是从静态 HTML 页面中来筛选出我们需要的信息.这一篇我们来学习下如何来获 …

VSCode的Python扩展下程序运行的几种方式与环境变量管理

在VSCode中编写Python程序时,由于有些地方要使用环境变量,但是发现设置的环境变量有时不起作用,花了点时间研究了一下,过程不表,直接说结论. 首先,环境变量的设置,Python扩展中有三种方式 …

python 读取wav 音频文件的两种方式

python 中,常用的有两种可以读取wav音频格式的方法,如下所示: import scipy from scipy.io import wavfile import soundfile as sf …

随机推荐

LabVIEW有限状态机

顺序模式是我们最先接触,也是最基本的一种编程模式, 程序按照固定的顺序依次执行,结束(如图1) 但在很多情况下,静态的顺序模式并不能满足我们编程的要求,我们需要更有效地动态结构来实时改变程序的执行顺序 …

atitit.提升开发效率—MDA 软件开发方式的革命(5)—-列表查询建模

)—-列表查询建模 1. 配置条件字段@Conditional 1 2. 配置条件字段显示类型为range—-@Conditional(displayType = displayType.ra …

php扩展开发初探

2015年2月26日 15:44:41 原因: 想用PHP实现一个布隆过滤器算法, 其中要用到位运算, 但是PHP的内置的int类型不给力, 不能支持大整数的位运算 数据一旦太大, 就会变为浮点数表示 …

CSS语法与用法小字典

前言:这是上学时期对CSS学习的整理,一直没见过光,由于不是专门做前端开发的,难免写不到重点,但对于看懂CSS,和掌握一些基本的用法,熟悉里面的门路还是大有裨益的.由于是从word中贴过来的,排版和格 …

HDU 5074 Luck Competition (暴力,概率)

题意:有 n 个人参加比赛,给出n-1个人的成绩,然后要选出一个幸运的人,先把所有的分数求平均数,然后再*2/3,那个不大于这个数,且最接近的数,就是最幸运的, 让你设置最后一个人的分,使他是最幸运的 …

QListWidget方式显示缩略图

最近在工作中经常遇到了一个问题就是把把文件夹中的图片全部以缩略图的形式显示出来,刚开始的时候一头雾水,不知道怎么办,经过在网上查资料,发现QListWidget控件可以实现图片的缩略图显示,但是不知道 …

使用BBED恢复数据文件头

转载请注明出处:http://blog.csdn.net/guoyjoe/article/details/31018075 @@@@@@@利用BBED模拟损坏5文件1号块(文件头) BBED> …

mvc中怎么读取htm的文件

@Html.Raw(File.ReadAllText(Server.MapPath(“/Include/head01.htm”)))

Java并发编程 Volatile关键字解析

volatile关键字的两层语义 一旦一个共享变量(类的成员变量.类的静态成员变量)被volatile修饰之后,那么就具备了两层语义: 1)保证了不同线程对这个变量进行操作时的可见性,即一个线程修改了 …

MAC使用小技巧之用好mac电脑10个必知的小技巧!

很多朋友是不是都有这样的困惑,刚接手Mac电脑,无论是笔记本亦或是台式机,很是不方便,因为windows系统那种习惯已经先入为主了,今天就给大家普及一些小技巧. 当你看到这篇文章,不管你有没有mac电 …

文章知识点与官方知识档案匹配,可进一步学习相关知识网络技能树首页概览22087 人正在系统学习中 相关资源:火凤凰软件安装包封装大师8.56中文已注册版本.exe_火凤打包…

来源:凤陶

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年1月11日
下一篇 2021年1月11日

相关推荐