Python使用指定端口进行http请求的例子


Posted in Python onJuly 25, 2019

使用requests库

class SourcePortAdapter(HTTPAdapter):
 """"Transport adapter" that allows us to set the source port."""

 def __init__(self, port, *args, **kwargs):
  self.poolmanager = None
  self._source_port = port
  super().__init__(*args, **kwargs)

 def init_poolmanager(self, connections, maxsize, block=DEFAULT_POOLBLOCK, **pool_kwargs):
  self.poolmanager = PoolManager(
   num_pools=connections, maxsize=maxsize,
   block=block, source_address=('', self._source_port))

s = requests.Session()
s.mount('https://baidu.com', SourcePortAdapter(54321))
s.get('https://baidu.com')

我用wireshark测试发现是走的54321端口。

使用pycurl库

c = pycurl.Curl()
c.setopt(c.URL, 'https://curl.haxx.se/dev/')
c.setopt(c.LOCALPORT, 54321)
c.setopt(c.LOCALPORTRANGE, [52314,56321,5532])
c.perform()
c.close()

测试OK,可以直接在curl命令行中测试。

curl --local-port 12520 http://baidu.com

参考

https://stackoverflow.com/questions/47202790/python-requests-how-to-specify-port-for-outgoing-traffic?rq=1

以上这篇Python使用指定端口进行http请求的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python计算程序运行时间的方法
Dec 13 Python
详解Python中的文件操作
Aug 28 Python
利用Python操作消息队列RabbitMQ的方法教程
Jul 19 Python
python如何统计序列中元素
Jul 31 Python
pandas.DataFrame选取/排除特定行的方法
Jul 03 Python
python爬虫之urllib,伪装,超时设置,异常处理的方法
Dec 19 Python
python批量将excel内容进行翻译写入功能
Oct 10 Python
Python 词典(Dict) 加载与保存示例
Dec 06 Python
python使用numpy实现直方图反向投影示例
Jan 17 Python
解决pytorch-yolov3 train 报错的问题
Feb 18 Python
python Django 反向访问器的外键冲突解决
May 20 Python
Python实现定时监测网站运行状态的示例代码
Sep 30 Python
django多对多表的创建,级联删除及手动创建第三张表
Jul 25 #Python
django 中QuerySet特性功能详解
Jul 25 #Python
对Python _取log的几种方式小结
Jul 25 #Python
django 中的聚合函数,分组函数,F 查询,Q查询
Jul 25 #Python
python使用paramiko模块通过ssh2协议对交换机进行配置的方法
Jul 25 #Python
python2 中 unicode 和 str 之间的转换及与python3 str 的区别
Jul 25 #Python
Python 3.8 新功能全解
Jul 25 #Python
You might like
PHP完整的日历类(CLASS)
2006/11/27 PHP
理解php Hash函数,增强密码安全
2011/02/25 PHP
PHP中的gzcompress、gzdeflate、gzencode函数详解
2014/07/29 PHP
php使用sql server验证连接数据库的方法
2014/12/25 PHP
[原创]php正则删除html代码中class样式属性的方法
2017/05/24 PHP
Javascript SHA-1:Secure Hash Algorithm
2006/12/20 Javascript
Packer 3.0 JS压缩及混淆工具 下载
2007/05/03 Javascript
Javascript基础教程之for循环
2015/01/18 Javascript
javascript实现获取字符串hash值
2015/05/10 Javascript
简述AngularJS的控制器的使用
2015/06/16 Javascript
理解Javascript图片预加载
2016/02/23 Javascript
JavaScript动态添加css样式和script标签
2016/07/19 Javascript
AngularJs定制样式插入到ueditor中的问题小结
2016/08/01 Javascript
JavaScript实现DOM对象选择器
2016/09/24 Javascript
最常见和最有用的字符串相关的方法详解
2017/02/06 Javascript
原生js FileReader对象实现图片上传本地预览效果
2020/03/27 Javascript
vue router 组件的高级应用实例代码
2019/04/08 Javascript
VueQuillEditor富文本上传图片(非base64)
2020/06/03 Javascript
Node 使用express-http-proxy 做api网关的实现
2020/10/15 Javascript
在Python中使用正则表达式的方法
2015/08/13 Python
python matplotlib中文显示参数设置解析
2017/12/15 Python
python购物车程序简单代码
2018/04/18 Python
python 定义给定初值或长度的list方法
2018/06/23 Python
python实现杨氏矩阵查找
2019/03/02 Python
将keras的h5模型转换为tensorflow的pb模型操作
2020/05/25 Python
django中cookiecutter的使用教程
2020/12/03 Python
CSS教程:CSS3圆角属性
2009/04/02 HTML / CSS
CSS3中Color的一些特性介绍
2012/05/27 HTML / CSS
使用CSS3的appearance属性改变任何元素的浏览器默认风格
2012/12/24 HTML / CSS
C/C++ 笔试、面试题目大汇总
2015/11/21 面试题
婚礼证婚人证婚词
2014/01/13 职场文书
卫生安全检查制度
2014/02/04 职场文书
工作推荐信范文
2014/05/10 职场文书
工程项目经理岗位职责
2015/02/02 职场文书
2016年教师政治思想表现评语
2015/12/02 职场文书
这样写python注释让代码更加的优雅
2021/06/02 Python