本文目录一览:
- 1、使用 python 实现高帧率、低延时、支持多个 iOS 设备同时屏幕共享的工具
- 2、python如何模拟登录Github
- 3、请问下载了github上的python文件后打不开怎么办?
- 4、Github里下载了fanficfare的代码,在python里怎么调用?
- 5、怎样使用GitHub?
- 6、去哪里找python的开源项目
使用 python 实现高帧率、低延时、支持多个 iOS 设备同时屏幕共享的工具
前段时间发布了一个 python 获取 iOS 性能数据的文章,也算开了个小口子能在获取 iOS 测试数据上更加方便了些,如果对 iOS 性能相关兴趣可以移步:
屏幕共享和远控平台现在发展也比较火热,但是 iOS 设备在画面同步和视频录制上,一直都没有一个比较不错的方案,也简单调研了下之前可以获取到 iOS 屏幕数据的方法:
该项目是 python 实现可以通过 USB 连接 iOS 设备进行屏幕共享,支持:
项目地址: 先点个小星星吧
usb 连接你的 iOS 手机,解锁并信任哟(手机锁屏不行)
每个 usb 连接设备时都会有一些配置信息,我们数据交互时,会使用某个配置与 usb 设备进行交互,这里用个 iOS 设备举例:
当我们使用 LibUsb 这个库 获取 iOS USB 设备信息时可以获取到配置信息 bNumConfigurations 5 个, 下面部分信息片段:
事实上在 iOS USB 级别上还有个隐藏配置信息,用来传输屏幕音视频相关数据,pyhton 开启方式 device.ctrl_transfer(0x40, 0x52, 0, 2, b'') 发送了这个指令之后,再次获取配置信息时,就会发现 bNumConfigurations 的数量变成了6个,多出来这个配置信息就是我们要使用的,使用这个 USB 配置,并连接相应端口后,就能传输音视频画面了
虽然我们使用这个音视频传输配置,但是这个配置下面还有多个 INTERFACE 接口,但是只有 bInterfaceSubClass=0x2A 这个接口才是需要用的,因此要还需要定位到这个配置下,然后会看到 INTERFACE 下面还有两个端口 ENDPOINT 0x86: Bulk IN(用来接收数据)和 ENDPOINT 0x5: Bulk OUT(用来发送数据),到此 usb 设置相关基本完成了
如果想分析 usb 数据的话执行: sudo ifconfig XHC20 up 命令后使用 wiershark 抓网卡 XHC20 就可以看到 部分 usb 数据交互
大概流程
前面交互完成后就能正式接收音视频消息了
如果想具体了解相关传输报文协议可以查看下方链接,本项目是参考这个大佬文章,最终使用 python 来实现的
今日份的知识已摄入~
想了解更多前沿测试开发技术,结识行业大牛:
欢迎关注「第十届MTSC大会·上海」
1个主会场+12大专场,大咖云集精英齐聚
12个专场包括:
知乎、物流、开源、游戏、酷家乐、音视频、客户端
服务端、数字经济、效能提升、质量保障、智能化测试
python如何模拟登录Github
首先进入github登录页:
输入账号密码,打开开发者工具,在Network页勾选上Preserve Log(显示持续日志),点击登录,查看Session请求,找到其请求的URL与Form Data、Headers。此时除Cookies与authenticity_token无法直接获得外,其余模拟登录所需参数皆已获得。
我们进入登录页点击登录后,浏览器会向服务器发送这些信息,所以这些信息是在登录页就已设置好的。所以我们在登录页源码中搜索authenticity_token,果然找到了它的值。在Response-Headers中观察到有一个set-cookies的字段,这个就是设置cookies的过程。下面给出代码示例。
相关推荐:《Python视频教程》
请问下载了github上的python文件后打不开怎么办?
一般你clone到本地后,可以运行pip install ./执行安装(setup.py是框架自动调用的)
然后再调用里面的方法查重
Github里下载了fanficfare的代码,在python里怎么调用?
这个库的文档确实写得不咋样 但大概看了下,是下载小说的
这个库已经上传到了pypi了,你直接pip install --upgrade FanFicFare就可以用了
安装后,命令行fanficfare -h 就可以看到用法,
也可以看这个代码,里面可以看见需要预先配置一些ini文件
网页链接
怎样使用GitHub?
Git 是一个管理你的「代码的历史记录」的工具。GitHub主要用Rails实现。我们在进行的post-commit集成小应用完全使用Merb编写。我们使用了Python的Pygments来做格式高亮显示,另外,还用了Ara T. Howard's Bj加上一些Ruby脚本来做我们的排队系统。当然,我们用了Ruby Grit库来和Git进行交互。GitHub已经有了一组引人注目的特性,除了命令式的库浏览器和一个项目Wiki,GitHub甚至还包括了一个GitHub gem,以使通过shell方式使用GitHub更为方便。更多的未来特性已经在计划中︰许多人都希望能有一个条目系统,因此一个简单的条目系统已经在开发中。此外,正如我前面所言,我们尚在进行RubyGems服务器和一些之前留出的post-commit钩子方面的工作。如果你不能或就是不想托管一个你自己的守护进程,你可以使用我们所提供的。
去哪里找python的开源项目
GitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名GitHub。作为开源代码库以及版本控制系统,Github拥有超过900万开发者用户。随着越来越多的应用程序转移到了云上,Github已经成为了管理软件开发以及发现已有代码的首选方法。在GitHub,用户可以十分轻易地找到海量的开源代码。
下面给大家介绍一些GitHub上25个开源项目:
(1)TensorFlow Models
如果你对机器学习和深度学习感兴趣,一定听说过TensorFlow。TensorFlow Models是一个开源存储库,可以找到许多与深度学习相关的库和模型。
(GitHub: )
(2)Keras
Keras是一个高级神经网络API,用Python编写,能够在TensorFlow,CNTK或Theano之上运行。旨在完成深度学习的快速开发(GitHub: )
(3)Flask
Flask 是一个微型的 Python 开发的 Web 框架,基于Werkzeug WSGI工具箱和Jinja2 模板引擎,使用BSD授权。
(GitHub: )
(4)scikit-learn
scikit-learn是一个用于机器学习的Python模块,基于 NumPy、SciPy 和 matplotlib 构建。,并遵循 BSD 许可协议。
(GitHub: )
(5)Zulip
Zulip是一款功能强大的开源群聊应用程序,它结合了实时聊天的即时性和线程对话的生产力优势。Zulip作为一个开源项目,被许多世界500强企业,大型组织以及其他需要实时聊天系统的用户选择使用,该系统允许用户每天轻松处理数百或数千条消息。Zulip拥有超过300名贡献者,每月合并超过500次提交,也是规模最大,发展最快的开源群聊项目。
(GitHub: )
相关推荐:《Python入门教程》
(6)Django
Django 是 Python 编程语言驱动的一个开源模型-视图-控制器(MVC)风格的 Web 应用程序框架,旨在快速开发出清晰,实用的设计。使用 Django,我们在几分钟之内就可以创建高品质、易维护、数据库驱动的应用程序。
(GitHub: )
(7)Rebound
Rebound 是一个当你得到编译错误时即时获取 Stack Overflow 结果的命令行工具。 就用 rebound 命令执行你的文件。这对程序员来说方便了不少。
(GitHub: )
(8)Google Images Download
这是一个命令行python程序,用于搜索Google Images上的关键字/关键短语,并可选择将图像下载到您的计算机。你也可以从另一个python文件调用此脚本。
(GitHub: )
(9)YouTube-dl
youtube-dl 是基于 Python 的命令行媒体文件下载工具,完全开源免费跨平台。用户只需使用简单命令并提供在线视频的网页地址即可让程序自动进行嗅探、下载、合并、命名和清理,最终得到已经命名的完整视频文件。
(GitHub: htt ps://github.com/rg3/youtube-dl )
(10)System Design Primer
此repo是一个系统的资源集合,可帮助你了解如何大规模构建系统。
(GitHub: )
(11)Mask R-CNN
Mask R-CNN用于对象检测和分割。这是对Python 3,Keras和TensorFlow的Mask R-CNN实现。该模型为图像中对象的每个实例生成边界框和分割蒙版。它基于特Feature Pyramid Network(FPN)和 ResNet101 backbone。
(GitHub: )
(12)Face Recognition
Face Recognition 是一个基于 Python 的人脸识别库,使用十分简便。这还提供了一个简单的face_recognition命令行工具,可以让您从命令行对图像文件夹进行人脸识别!
(GitHub: )
(13)snallygaster
用于扫描HTTP服务器上的机密文件的工具。
(GitHub: )
(14)Ansible
Ansible是一个极其简单的IT自动化系统。它可用于配置管理,应用程序部署,云配置,支持远程任务执行和多节点发布 - 包括通过负载平衡器轻松实现零停机滚动更新等操作。
(GitHub: )
(15)Detectron
Detectron是Facebook AI 研究院开源的的软件系统,它实现了最先进的目标检测算法,包括Mask R-CNN。它是用Python编写的,由Caffe2深度学习框架提供支持。
(16)asciinema
终端会话记录器和asciinema.org的最佳搭档。
(GitHub: )
(17)HTTPie
HTTPie 是一个开源的命令行的 HTTP 工具包,其目标是使与Web服务的CLI交互尽可能人性化。它提供了一个简单的http命令,允许使用简单自然的语法发送任意HTTP请求,并显示彩色输出。HTTPie可用于测试,调试以及通常与HTTP服务器交互。
(GitHub: )
(18)You-Get
You-Get是一个小型命令行实用程序,用于从Web下载媒体内容(视频,音频,图像),支持国内外常用的视频网站。
(GitHub: )
(19)Sentry
Sentry从根本上讲是一项服务,可以帮助用户实时监控和修复崩溃。基于Django构建,它包含一个完整的API,用于从任何语言、任何应用程序中发送事件。
(GitHub: )
(20)Tornado
Tornado是使用Python开发的全栈式(full-stack)Web框架和异步网络库,,最初是由FriendFeed上开发的。通过使用非阻塞网络I / O,Tornado可以扩展到数万个开放连接,是long polling、WebSockets和其他需要为用户维护长连接应用的理想选择。
(GitHub: )
(21)Magenta
Magenta是一个探索机器学习在创造艺术和音乐过程中的作用的研究项目。这主要涉及开发新的深度学习和强化学习算法,用于生成歌曲,图像,绘图等。但它也是构建智能工具和界面的探索,它允许艺术家和音乐家使用这些模型。
(GitHub: )
(22)ZeroNet
ZeroNet是一个利用比特币的加密算法和BitTorrent技术提供的不受审查的网络,完全开源。
(GitHub: )
(23)Gym
OpenAI Gym是一个用于开发和比较强化学习算法的工具包。这是Gym的开源库,可让让你访问标准化的环境。
(GitHub: )
(24)Pandas
Pandas是一个Python包,提供快速,灵活和富有表现力的数据结构,该工具是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。此外,它还有更广泛的目标,即成为所有语言中最强大,最灵活的开源数据分析/操作工具。它目前已经朝着这个目标迈进。
(GitHub: )
(25)Luigi
Luigi 是一个 Python 模块,可以帮你构建复杂的批量作业管道。处理依赖决议、工作流管理、可视化展示等等,内建 Hadoop 支持。(GitHub: )