python

requests的简单运用

使用pycharm获取requests包

ctrl+alt+s Project:pythonProject pythoninterpreter 点+号搜索

使用requests里的socket达成局域网内通讯,UDP

import time   #server
import socket
try:
s = socket.socket(type=socket.SOCK_DGRAM) # 创建类
hostname = socket.gethostname() # 获取自己的主机名
s.bind((hostname, 8888)) # 绑定主机号与端口号
msg,address=s.recvfrom(1024)
print(time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(time.time())),
"服务端收到客户端:%s的消息:%s"%(address,msg.decode('utf-8')))
data='可以正常通讯'.encode('utf-8')
s.sendto(data,address)
while True:
a = input("发送消息(q = quit)")
if a != "q":
s.sendto(a.encode('utf-8'), address)
else:
break
msg,address=s.recvfrom(1024)
print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(time.time())),
"服务端收到客户端:%s的消息:%s" % (address, msg.decode('utf-8')))
s.close()
except Exception as e:
print("出错了", e) import socket #client
import time
try:
s=socket.socket(type=socket.SOCK_DGRAM)
hostname=socket.gethostname()
data='连接成功'.encode('utf-8')
s.sendto(data,(hostname,8888))
responese,address=s.recvfrom(1024)
print(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time())),
'收到服务端%s的消息:%s'%(address,responese.decode('utf-8')))
n=0
while n<1000:
response,address = s.recvfrom(1024)
print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(time.time())),
"收到服务端%s的消息:%s" % (address, response.decode('utf-8')))
a = input('发送信息')
s.sendto(a.encode('utf-8'),address)
s.close()
except Exception as e:
print('出错了',e)

使用requests里的socket达成局域网内通讯,TCP

import socket   #server
import time
try:
s = socket.socket()
hostname = socket.gethostname()
# 绑定套接字地址
s.bind((hostname, 8888))
s.listen(5)
print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())), '服务端准备完毕,等待客户端连接')
con, address = s.accept()
print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())),'客户端已连接上服务端,连接地址:', address)
message = '你好,我是服务端'
# 发送消息,必须对发送的内容进行编码
con.send(message.encode('utf-8'))
print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())), '服务端发送:', message)
# 关闭套接字
con.close()
except Exception as e:
print('建立TCP服务端失败', e) import socket
import time
try:
s = socket.socket()
hostname = socket.gethostname()
s.connect((hostname, 8888))
response = s.recv(1024).decode('utf-8') # 接收服务端消息并解码
print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())), '收到服务端消息:', response)
s.close() # 关闭套接字
except Exception as e:
print('建立TCP客户端失败', e)

requests模块里的get应用

import requests
word = input('请输入搜索内容')
pn = input('请输入页码')
p={'kw':word,"pn":pn}
url='https://tieba.baidu.com/f'
headers={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:94.0) Gecko/20100101 Firefox/94.0'}
re=requests.get(url,headers=headers,params=p)
print(re.content.decode('utf-8'))

输入图片地址将结尾改成.jpg可以爬图片

request模块里的post应用

这里使用post去给百度翻译传参数

import requests
import json
headers={"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:93.0) Gecko/20100101 Firefox/93.0"}
url='https://fanyi.baidu.com/sug'
while True:
word = input('百度翻译:')
if word.lower() == 'quit':
break
data={"kw":word}
re=requests.post(url,headers=headers,data=data) #地址,伪装的浏览器以及数据
re_obj=re.json() #把json格式写进re_obj
print(word+":"+re_obj['data'][0]['v']) #指定re_obj里的特定值
filename=word+'.json' #设置文件名
fp=open(filename,"w",encoding='utf-8') #以utf-8写入文件
json.dump(re_obj,fp=fp,ensure_ascii=False) #不允许json以ascii码的形式写入文件

get是在url地址上加参数,post是在页面里面的文本栏加参数

python requests库的简单运用的更多相关文章

  1. python requests库的简单使用

    requests是python的一个HTTP客户端库,跟urllib,urllib2类似,但比urllib,urllib2更加使用简单. 1. requests库的安装在你的终端中运行pip安装命令即 ...

  2. Python:requests库、BeautifulSoup4库的基本使用(实现简单的网络爬虫)

    Python:requests库.BeautifulSoup4库的基本使用(实现简单的网络爬虫) 一.requests库的基本使用 requests是python语言编写的简单易用的HTTP库,使用起 ...

  3. 使用python requests库写接口自动化测试--记录学习过程中遇到的坑(1)

    一直听说python requests库对于接口自动化测试特别合适,但由于自身代码基础薄弱,一直没有实践: 这次赶上公司项目需要,同事小伙伴们一起学习写接口自动化脚本,听起来特别给力,赶紧实践一把: ...

  4. 大概看了一天python request源码。写下python requests库发送 get,post请求大概过程。

    python requests库发送请求时,比如get请求,大概过程. 一.发起get请求过程:调用requests.get(url,**kwargs)-->request('get', url ...

  5. python requests库学习笔记(上)

    尊重博客园原创精神,请勿转载! requests库官方使用手册地址:http://www.python-requests.org/en/master/:中文使用手册地址:http://cn.pytho ...

  6. Python——Requests库的开发者接口

    本文介绍 Python Requests 库的开发者接口,主要内容包括: 目录 一.主要接口 1. requests.request() 2. requests.head().get().post() ...

  7. 【原创】python requests 库底层Sockets处于close_wait状态

    以前对于Requests库只是简单是使用,在现在公司的后台中,有多个接口是直接使用requests.get .post之类的方法来做的,进行过一段时间的压力测试,发现性能低的可怜,且linux服务器有 ...

  8. Python requests库的使用(一)

    requests库官方使用手册地址:http://www.python-requests.org/en/master/:中文使用手册地址:http://cn.python-requests.org/z ...

  9. Python Requests库简单入门

    我对Python网络爬虫的学习主要是基于中国慕课网上嵩天老师的讲授,写博客的目的是为了更好触类旁通,并且作为学习笔记之后复习回顾. 1.引言 requests 库是一个简洁且简单的处理HTTP请求的第 ...

随机推荐

  1. 搜索工具Wox简单使用

    目录 下载安装 几个常用命令 自定义 Wox是快速搜索小工具,内置了everything(需要先安装),但比everything好用.不止是搜文件,网页.系统等都可以快速搜索,还可以自定义. 下载安装 ...

  2. python项目——新闻管理系统

    DAO(Data Access Object) 数据访问对象是一个面向对象的数据库接口 控制台的输入输出都是再app.py里面完成的  mysql_db.py import mysql.connect ...

  3. mysql优化方法陈列

    高并发大多的瓶颈在后台,在存储,mysql的正常的优化方案如下: 1)代码中sql语句优化 2)数据库字段优化,索引优化 3)加缓存,redis/memcache等 4)主从,读写分离 5)分区表 6 ...

  4. 18-Rotate Array-Leetcode

    Rotate an array of n elements to the right by k steps. For example, with n = 7 and k = 3, the array ...

  5. Yarn的Tool接口案例

    目录 Yarn的Tool接口案例 Tool接口环境准备 1 新建Maven项目YarnDemo 编写代码 打包jar上传到集群 Yarn的Tool接口案例 Tool接口环境准备 之前写wordcoun ...

  6. 我可以减肥失败,但我的 Docker 镜像一定要瘦身成功!

    作者|徐伟 来源|尔达 Erda 公众号 ​ 简介 容器镜像类似于虚拟机镜像,封装了程序的运行环境,保证了运行环境的一致性,使得我们可以一次创建任意场景部署运行.镜像构建的方式有两种,一种是通过 do ...

  7. 大数据学习day39----数据仓库02------1. log4j 2. 父子maven工程(子spring项目的创建)3.项目开发(埋点日志预处理-json数据解析、清洗过滤、数据集成实现、uid回补)

    1. log4j(具体见log4j文档) log4j是一个java系统中用于输出日志信息的工具.log4j可以将日志定义成多种级别:ERROR  /  WARN  /  INFO  /  DEBUG ...

  8. c++string转const char*与char*

    #include <iostream> #include <string> #include <memory> using namespace std; const ...

  9. ReactiveCocoa操作方法-线程\时间

    ReactiveCocoa操作方法-线程 deliverOn: 内容传递切换到制定线程中,副作用在原来线程中,把在创建信号时block中的代码称之为副作用. subscribeOn: 内容传递和副作用 ...

  10. entfrm开源免费模块化无代码开发平台,开放生态为您创造更多的价值

    entfrm开发平台6大特性,赋能快速开发,为您创造更多的价值: 1. 模块化 丰富的模块稳定的框架 后台极易上手 目前已包括系统管理.任务调度.运维监控.开发工具.消息系统.工作流引擎.内容管理等模 ...