Python【网络编程】内置模块urllib
from urllib import request,parse
url = 'http://www.nnzhp.cn'
req = request.urlopen(url) #打开一个url,发get请求
content = req.read().decode() #获取返回结果,req.read()方法返回的是一个二进制的数据,需要进行解码,故此处调用了decode()方法
print(content) #结果输出:html页面代码,是一个字符串类型
fw = open('baidu.html','w',encoding='utf-8')
fw.write(content) #把获取到的html页面内容写入baidu.html文件 print("=============get请求=================")
#发送get请求时,请求参数直接跟url地址写在一块
import json
url='http://api.nnzhp.cn/api/user/stu_info?stu_name=xiaohei'
req = request.urlopen(url)
content = req.read().decode()
print(content)
res_dic = json.loads(content) #返回的结果如果是一个json格式的字符串,则转成字典
if res_dic.get('error_code') == 0:
print('测试通过')
else:
print('测试失败', res_dic) print("=============post请求================")
#发送post请求时,需要使用parse.urlencode()方法给我们拼接好参数;
#发送post请求时,request.urlopen()方法需要带上post请求的相关参数
url = 'http://api.nnzhp.cn/api/user/login'
#定义请求数据
data = {
'username':'admin',
'passwd':'aA123456'
}
data = parse.urlencode(data) #urlencode,自动拼接好参数,拼接后的参数格式为:xx=xx&xx=11,urlencode()返回的是字符串类型
req = request.urlopen(url,data.encode()) #发post请求
print(req.read().decode()) #网络爬虫:利用网络编程技术去访问其他网站,抓取网页的内容信息,得到信息后,再对信息进行调整,
#如果是想把抓取到的内容嵌入到自己公司网站中,则需要跟公司的网站样式风格保持,则需要对HTML、JS、CSS等等进行相关的调整
#调整好信息后,可以把该部分信息嵌入到自己的网站中,或者存入数据库中等等
Python【网络编程】内置模块urllib的更多相关文章
- Python学习(22)python网络编程
Python 网络编程 Python 提供了两个级别访问的网络服务.: 低级别的网络服务支持基本的 Socket,它提供了标准的 BSD Sockets API,可以访问底层操作系统Socket接口的 ...
- Day07 - Python 网络编程 Socket
1. Python 网络编程 Python 提供了两个级别访问网络服务: 低级别的网络服务支持基本的 Socket,它提供了标准的 BSD Sockets API,可以访问底层操作系统Socket接口 ...
- 《Python网络编程》学习笔记--使用谷歌地理编码API获取一个JSON文档
Foundations of Python Network Programing,Third Edition <python网络编程>,本书中的代码可在Github上搜索fopnp下载 本 ...
- Python 网络编程相关知识学习
Python 网络编程 Python 提供了两个级别访问的网络服务.: 低级别的网络服务支持基本的 Socket,它提供了标准的 BSD Sockets API,可以访问底层操作系统Socket接口的 ...
- python 网络编程 TCP/IP socket UDP
TCP/IP简介 虽然大家现在对互联网很熟悉,但是计算机网络的出现比互联网要早很多. 计算机为了联网,就必须规定通信协议,早期的计算机网络,都是由各厂商自己规定一套协议,IBM.Apple和Micro ...
- 28、Python网络编程
一.基于TCP协议的socket套接字编程 1.套接字工作流程 先从服务器端说起.服务器端先初始化Socket,然后与端口绑定(bind),对端口进行监听(listen),调用accept阻塞,等待客 ...
- Python 网络编程(二)
Python 网络编程 上一篇博客介绍了socket的基本概念以及实现了简单的TCP和UDP的客户端.服务器程序,本篇博客主要对socket编程进行更深入的讲解 一.简化版ssh实现 这是一个极其简单 ...
- Python 网络编程(一)
Python 网络编程 socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过"套接字"向网络发出请求或者应答网络请求. ...
- python网络编程-01
python网络编程 1.socket模块介绍 ①在网络编程中的一个基本组件就是套接字(socket),socket是两个程序之间的“信息通道”. ②套接字包括两个部分:服务器套接字.客户机套接字 ③ ...
- Python网络编程基础pdf
Python网络编程基础(高清版)PDF 百度网盘 链接:https://pan.baidu.com/s/1VGwGtMSZbE0bSZe-MBl6qA 提取码:mert 复制这段内容后打开百度网盘手 ...
随机推荐
- LeetCode 404. Sum of Left Leaves (C++)
题目: Find the sum of all left leaves in a given binary tree. Example: 3 / \ 9 20 / \ 15 7 There are t ...
- 【每日scrum】第一次冲刺day5
请教以前做过类似软件的同学,受益匪浅,启发自己
- 第二阶段每日站立会议First Day
昨天我进行了用户界面的修改,例如按钮的大小,位置,使界面看起来更美观.更简洁 今天准备安装在手机端进行界面效果测试以及进一步完善 遇到的问题:有些按钮由于在之前固定好的布局之中,所以没法移动其位置
- Java基础第一节.Java简介
第一节 Java简介 Java是一个由Sun公司开发而成的新一代的编程语言. Java语言是对软件开发有深远影响.应用前景广泛.具有丰富的类库.继承了C++的传统(摈弃了某些不足)广泛使用的网络编程语 ...
- BETA-3
前言 我们居然又冲刺了·三 团队代码管理github 站立会议 队名:PMS 530雨勤(组长) 过去两天完成了哪些任务 一堆deadline截至前的两天,为了图形学和编译原理毅然决然地放弃冲刺 接下 ...
- 深入理解JAVA集合系列一:HashMap源码解读
初认HashMap 基于哈希表(即散列表)的Map接口的实现,此实现提供所有可选的映射操作,并允许使用null值和null键. HashMap继承于AbstractMap,实现了Map.Cloneab ...
- 评论alpha发布以及PSP
讲解顺序: 1. 俄罗斯方块 武志远 俄罗斯方块有自己新颖的玩法加在里面 ,可以进行游戏,界面友好但不美观,与传统玩法相比增加了经验值,这是一个很好的创意,游戏运行也很流畅,并找到两名同学现场体 ...
- Linux内核0.11 makefile文件说明
# # if you want the ram-disk device, define this to be the # size in blocks. # 如果要使用 RAM 就定义块的大小(注释掉 ...
- [转帖] SQLNET.ORA的处理.
被一个客户端连接远程数据库阻塞超时的问题困扰了好久,最后终于找到了答案 https://blog.csdn.net/herobox/article/details/16985097 Oracle ...
- 微信公众平台实现获取用户OpenID的方法
这篇文章主要介绍了微信公众平台实现获取用户OpenID的方法,需要开发人员经过微信授权后获取高级接口才能使用此功能,用户OpenID对于微信公众平台建设有着非常广泛的用途,需要的朋友可以参考下 本文实 ...