diff --git a/README.en.md b/README.en.md
deleted file mode 100644
index 59cce35410a41ff2b8a185f8b1b13ff252a15a49..0000000000000000000000000000000000000000
--- a/README.en.md
+++ /dev/null
@@ -1,36 +0,0 @@
-# python-websockets
-
-#### Description
-An implementation of the WebSocket Protocol (RFC 6455 & 7692)
-
-#### Software Architecture
-Software architecture description
-
-#### Installation
-
-1. xxxx
-2. xxxx
-3. xxxx
-
-#### Instructions
-
-1. xxxx
-2. xxxx
-3. xxxx
-
-#### Contribution
-
-1. Fork the repository
-2. Create Feat_xxx branch
-3. Commit your code
-4. Create Pull Request
-
-
-#### Gitee Feature
-
-1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md
-2. Gitee blog [blog.gitee.com](https://blog.gitee.com)
-3. Explore open source project [https://gitee.com/explore](https://gitee.com/explore)
-4. The most valuable open source project [GVP](https://gitee.com/gvp)
-5. The manual of Gitee [https://gitee.com/help](https://gitee.com/help)
-6. The most popular members [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)
diff --git a/README.md b/README.md
deleted file mode 100644
index c2f213d2d8ad7d97c960297602345c697b583186..0000000000000000000000000000000000000000
--- a/README.md
+++ /dev/null
@@ -1,37 +0,0 @@
-# python-websockets
-
-#### 介绍
-An implementation of the WebSocket Protocol (RFC 6455 & 7692)
-
-#### 软件架构
-软件架构说明
-
-
-#### 安装教程
-
-1. xxxx
-2. xxxx
-3. xxxx
-
-#### 使用说明
-
-1. xxxx
-2. xxxx
-3. xxxx
-
-#### 参与贡献
-
-1. Fork 本仓库
-2. 新建 Feat_xxx 分支
-3. 提交代码
-4. 新建 Pull Request
-
-
-#### 码云特技
-
-1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md
-2. 码云官方博客 [blog.gitee.com](https://blog.gitee.com)
-3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解码云上的优秀开源项目
-4. [GVP](https://gitee.com/gvp) 全称是码云最有价值开源项目,是码云综合评定出的优秀开源项目
-5. 码云官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help)
-6. 码云封面人物是一档用来展示码云会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)
diff --git a/python-websockets.spec b/python-websockets.spec
new file mode 100644
index 0000000000000000000000000000000000000000..78a43fd22b94e09677a30ee68d0d5db9d9f1b023
--- /dev/null
+++ b/python-websockets.spec
@@ -0,0 +1,151 @@
+%global _empty_manifest_terminate_build 0
+Name: python-websockets
+Version: 8.1
+Release: 1
+Summary: An implementation of the WebSocket Protocol (RFC 6455 & 7692)
+License: BSD
+URL: https://github.com/aaugustin/websockets
+Source0: https://files.pythonhosted.org/packages/e9/2b/cf738670bb96eb25cb2caf5294e38a9dc3891a6bcd8e3a51770dbc517c65/websockets-8.1.tar.gz
+
+
+%description
+``websockets`` is a library for building WebSocket servers_ and clients_ in
+Python with a focus on correctness and simplicity.
+Built on top of ``asyncio``, Python's standard asynchronous I/O framework, it
+provides an elegant coroutine-based API.
+`Documentation is available on Read the Docs. `_
+Here's how a client sends and receives messages:
+ #!/usr/bin/env python
+ import asyncio
+ import websockets
+ async def hello(uri):
+ async with websockets.connect(uri) as websocket:
+ await websocket.send("Hello world!")
+ await websocket.recv()
+ asyncio.get_event_loop().run_until_complete(
+ hello('ws://localhost:8765'))
+And here's an echo server:
+ #!/usr/bin/env python
+ import asyncio
+ import websockets
+ async def echo(websocket, path):
+ async for message in websocket:
+ await websocket.send(message)
+ asyncio.get_event_loop().run_until_complete(
+ websockets.serve(echo, 'localhost', 8765))
+ asyncio.get_event_loop().run_forever()
+Does that look good?
+`Get started with the tutorial! `_
+
+%package -n python3-websockets
+Summary: An implementation of the WebSocket Protocol (RFC 6455 & 7692)
+Provides: python-websockets
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-cffi
+BuildRequires: gcc
+BuildRequires: gdb
+%description -n python3-websockets
+``websockets`` is a library for building WebSocket servers_ and clients_ in
+Python with a focus on correctness and simplicity.
+Built on top of ``asyncio``, Python's standard asynchronous I/O framework, it
+provides an elegant coroutine-based API.
+`Documentation is available on Read the Docs. `_
+Here's how a client sends and receives messages:
+ #!/usr/bin/env python
+ import asyncio
+ import websockets
+ async def hello(uri):
+ async with websockets.connect(uri) as websocket:
+ await websocket.send("Hello world!")
+ await websocket.recv()
+ asyncio.get_event_loop().run_until_complete(
+ hello('ws://localhost:8765'))
+And here's an echo server:
+ #!/usr/bin/env python
+ import asyncio
+ import websockets
+ async def echo(websocket, path):
+ async for message in websocket:
+ await websocket.send(message)
+ asyncio.get_event_loop().run_until_complete(
+ websockets.serve(echo, 'localhost', 8765))
+ asyncio.get_event_loop().run_forever()
+Does that look good?
+`Get started with the tutorial! `_
+
+%package help
+Summary: Development documents and examples for websockets
+Provides: python3-websockets-doc
+%description help
+``websockets`` is a library for building WebSocket servers_ and clients_ in
+Python with a focus on correctness and simplicity.
+Built on top of ``asyncio``, Python's standard asynchronous I/O framework, it
+provides an elegant coroutine-based API.
+`Documentation is available on Read the Docs. `_
+Here's how a client sends and receives messages:
+ #!/usr/bin/env python
+ import asyncio
+ import websockets
+ async def hello(uri):
+ async with websockets.connect(uri) as websocket:
+ await websocket.send("Hello world!")
+ await websocket.recv()
+ asyncio.get_event_loop().run_until_complete(
+ hello('ws://localhost:8765'))
+And here's an echo server:
+ #!/usr/bin/env python
+ import asyncio
+ import websockets
+ async def echo(websocket, path):
+ async for message in websocket:
+ await websocket.send(message)
+ asyncio.get_event_loop().run_until_complete(
+ websockets.serve(echo, 'localhost', 8765))
+ asyncio.get_event_loop().run_forever()
+Does that look good?
+`Get started with the tutorial! `_
+
+%prep
+%autosetup -n websockets-8.1
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-websockets -f filelist.lst
+%dir %{python3_sitearch}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Thu Oct 01 2020 Python_Bot
+- Package Spec generated
diff --git a/python-websockets.yaml b/python-websockets.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..80abf829fd52a451d69c26a11fcc3f4fd2069563
--- /dev/null
+++ b/python-websockets.yaml
@@ -0,0 +1,4 @@
+version_control: pypi
+src_repo: websockets
+tag_prefix:
+seperator: .
diff --git a/websockets-8.1.tar.gz b/websockets-8.1.tar.gz
new file mode 100644
index 0000000000000000000000000000000000000000..a4fde0675e205176d30005ef78668ba38cc441a6
Binary files /dev/null and b/websockets-8.1.tar.gz differ