Cài đặt websocket Python

Lệnh này sẽ hiển thị cho bạn các phụ thuộc cho python-websocket-client. Rất may, khi sử dụng Yum, nếu các phụ thuộc được yêu cầu, chúng cũng được cài đặt cùng lúc nên bạn không phải lo lắng quá nhiều về điều đó

Hướng dẫn này hướng dẫn bạn viết một chương trình để lấy dữ liệu thị trường theo thời gian thực bằng cách sử dụng Dịch vụ dữ liệu thị trường Forex API của TraderMade. TraderMade là nhà cung cấp dữ liệu lịch sử và thời gian thực đáng tin cậy nhất cho Forex, CFD và Kim loại

Ban đầu, bạn cần đăng ký Tài khoản dùng thử WebSocket với TraderMade. Vui lòng đăng ký khóa WebSocket. Dùng thử miễn phí API Java cho WebSocket của chúng tôi trong hai tuần đầu tiên. Gói đăng ký của chúng tôi bắt đầu với chi phí hợp lý là £100 PCM

Vì vậy, hãy bắt đầu

Điều cần thiết là thiết lập môi trường viết mã trước khi chúng tôi bắt đầu viết mã. Hãy làm điều này trong 3 bước đơn giản như sau.  

Sự sắp xếp

  1. Thiết lập Python
  2. Cài đặt Pip
  3. Thiết lập dự án

Bước 1. Cài đặt Python

Tôi khuyên dùng Python 3. 9. 1 bất cứ khi nào có thể, vì đây là phiên bản mới nhất và ổn định nhất.  

                
For Windows:
You can download the windows installer from python.org or
alternatively use the python app from the windows app store.

For Linux:
It's best to update apt-get before the install so run
$sudo apt-get update
$sudo apt-get install python3.9


Bước 2. Cài đặt Pip

                
For Windows:
pip is installed by defualt

For Linux:
$sudo apt-get install python3-pip


Bước 3. Thiết lập dự án

Để bắt đầu, bạn cần tạo một thư mục để lưu trữ chương trình của mình. Ở đây, tôi đã tạo một thư mục có tên /WebSocketTestClient

Bây giờ, chúng ta cần cài đặt thư viện cần thiết. Chúng tôi cần một thư viện bên ngoài, WebSocket Client, ví dụ này.  

                
For Windows and Linux
pip install websocket_client

Bây giờ, viết một số mã, phải không?

Tạo một tệp mới, testClient. py, trong thư mục của bạn. Để làm điều đó, bạn có thể sử dụng trình soạn thảo hoặc Notepad/VI nếu bạn là người mới bắt đầu.  

Chương trình chúng tôi viết sẽ tiếp tục chạy khi chúng tôi thiết lập kết nối trực tiếp. Chúng ta nên sử dụng lớp luồng và tùy chọn WebSocket run_forever[]

Nhập thư viện

                
import websocket
import time
try:
     import thread
except ImportError:
    import _thread as thread

f = open["webSocketTester.log", "a"]


Tạo các chức năng cần thiết

Điều cần thiết là tạo các hàm để xử lý các cuộc gọi lại từ lớp WebSocket-Client. Đáng chú ý, đây là những trình xử lý tiêu chuẩn và sẽ giống hệt nhau đối với bất kỳ WebSocket nào. Vui lòng đăng ký dùng thử WebSocket miễn phí tại https. //tradermade. com/đăng ký. Bạn có thể gửi chi tiết đăng nhập của mình để nhận TraderMade WebSocket on_open.  

                
def on_message[ws, message]:
    print[message]
    f.write["Live fx rates" + message  +  "
" ]
    f.flush[]

def on_error[ws, error]:
    print[error]

def on_close[ws]:
    print["### closed ###"]

def on_open[ws]:
    def run[*args]:
        ws.send["{"userKey":"USER_KEY", "symbol":"GBPUSD"}"]
    thread.start_new_thread[run, []]

                I

Ở giai đoạn này, chúng tôi có bộ ghi và trình xử lý. Chúng ta cần tạo WebSocket thông qua chức năng chính của chương trình

                
if __name__ == "__main__":
    ws = websocket.WebSocketApp["wss://marketdata.tradermade.com/feedadv",
                              on_message = on_message,
                              on_error = on_error,
                              on_close = on_close]
    ws.on_open = on_open
    ws.run_forever[]



Chạy chương trình ngay bây giờ

                   
For Windows:
$python testClient.py

For Linux:
$sudo python3 testClient.py



thì đấy. Giờ đây, bạn có thể nhận được Tỷ giá ngoại hối trực tiếp trong nhật ký và bảng điều khiển.  

                   
Connected
Live fx rates GBPUSD 1.36897 1.36897 1.368970 20210208-10:31:32.156
Live fx rates GBPUSD 1.36897 1.36898 1.368975 20210208-10:31:32.502
Live fx rates GBPUSD 1.36897 1.36897 1.368970 20210208-10:31:32.757
Live fx rates GBPUSD 1.36904 1.36904 1.369040 20210208-10:31:33.057
Live fx rates GBPUSD 1.36904 1.36905 1.369045 20210208-10:31:33.948
Live fx rates GBPUSD 1.36904 1.36904 1.369040 20210208-10:31:34.860
Live fx rates GBPUSD 1.36904 1.36905 1.369045 20210208-10:31:35.156

Tôi đang đưa ra bộ mã hoàn chỉnh bên dưới. Tương tự, bạn có thể tải xuống mã được điền trước bằng khóa người dùng của mình từ liên kết này

Thông qua một kết nối ổ cắm TCP/IP duy nhất, WebSockets cho phép kênh liên lạc hai chiều, song công hoàn toàn hoạt động qua HTTP

con trăn

Python là một ngôn ngữ lập trình đa năng, cấp cao được giải thích. Việc sử dụng thụt đầu dòng đáng kể trong triết lý thiết kế của nó nhấn mạnh khả năng đọc mã. Các yếu tố ngôn ngữ và cách tiếp cận hướng đối tượng của nó nhằm mục đích hỗ trợ các lập trình viên viết mã hợp lý, rõ ràng cho cả các dự án quy mô lớn và nhỏ

Xây dựng máy chủ WebSocket bằng Python

Trước tiên hãy thiết lập môi trường

  1. Đảm bảo bạn đã cài đặt python trong hệ thống của mình
  2. Bây giờ, hãy sử dụng pip để cài đặt gói WebSocket bằng lệnh bên dưới

1

pip cài đặt ổ cắm web

Chúng tôi có thể bắt đầu xây dựng máy chủ và máy khách để kết nối sau khi bạn đã cài đặt gói WebSockets

Bây giờ, hãy tạo một Máy chủ

Tạo một tệp máy chủ, ví dụ “máy chủ. py”

Bên trong tệp máy chủ, chúng tôi nhập các gói bắt buộc—trong trường hợp này là asyncIO và WebSockets

Dán đoạn mã sau để tạo máy chủ web

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

nhập asyncio

 

nhập ổ cắm web

 

# tạo trình xử lý cho mỗi kết nối

 

async def trình xử lý[websocket, path]:

 

    dữ liệu = chờ websocket.recv[]

 

    trả lời = f"Dữ liệu đã nhận dưới dạng. {dữ liệu}. "

 

    chờ websocket. gửi[trả lời]

 

 

start_server = ổ cắm web. phục vụ[trình xử lý, ", 8000]

 

 

không đồng bộ. get_event_loop[]. run_until_complete[start_server]

 

không đồng bộ. get_event_loop[]. run_forever[]

Sau đó, chúng tôi tạo một trình xử lý với các tham số WebSocket và đường dẫn. URL của máy chủ được đại diện bởi WebSocket [localhost. 8000]

Sau đó, chúng tôi sẽ đợi tin nhắn và kết nối đến. Chúng tôi thực hiện hành động dựa trên thông tin chúng tôi đã thu thập. Một phản hồi cơ bản chứa nội dung của dữ liệu nhận được trong ví dụ của chúng tôi

Hãy tạo một khách hàng ngay bây giờ

Tạo một tệp và gọi nó là khách hàng. html. Bên trong tệp, dán đoạn mã sau

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

 

{

 

    ổ cắm. gửi["Khởi tạo"];

 

}

 

 

Lưu tệp và mở tệp trong trình duyệt

Bạn có thể thấy trong kết nối bảng điều khiển được thiết lập

Máy khách WebSocket với Python

Bây giờ, hãy tạo kết nối máy khách WebSocket trong python

Tạo một tệp mới “máy khách. py” và nhập các gói như chúng tôi đã làm trong mã máy chủ của mình

1

2

nhập asyncio

nhập ổ cắm web

Bây giờ, hãy tạo một hàm không đồng bộ Python [còn gọi là coroutine]

1

không đồng bộ def thử nghiệm[]:

Chúng tôi sẽ sử dụng chức năng kết nối từ mô-đun WebSockets để xây dựng kết nối máy khách WebSocket. Nó trả về một đối tượng WebSocketClientProtocol, có thể được sử dụng để truyền và nhận các thông báo WebSocket

1

2

3

không đồng bộ def thử nghiệm[]:

    không đồng bộ với ổ cắm web. kết nối['wss. //thử nghiệm. ổ cắm. com/v3/channel_1?api_key=YOUR_API_KEY'] as websocket.

Bạn có thể tạo khóa API PieSocket từ đây

Để gửi dữ liệu, chúng ta chỉ cần gọi send coroutine với chuỗi dữ liệu mà chúng ta muốn gửi cho client làm đầu vào. Chúng tôi sẽ gửi một tin nhắn “xin chào” đơn giản

Vì đây là một coroutine nên chúng ta sẽ sử dụng từ khóa await để đợi nó. Lưu ý rằng việc sử dụng await sẽ tạm dừng quá trình thực thi của quy trình đăng ký hiện tại [trong ví dụ của chúng tôi là chức năng kiểm tra] cho đến khi quá trình chờ hoàn thành và cung cấp dữ liệu kết quả

Làm cách nào để cài đặt WebSocket trong Python?

Cài đặt .
Để cài đặt python-socks để sử dụng proxy và wsaccel để tăng hiệu suất nhỏ, hãy sử dụng. pip3 cài đặt websocket-client[tùy chọn]
Để cài đặt ổ cắm web để chạy thử nghiệm đơn vị bằng máy chủ tiếng vang cục bộ, hãy sử dụng. pip3 cài đặt websocket-client[test]

Làm cách nào để cài đặt WebSocket trong Python Anaconda?

Có thể cài đặt websocket-client từ kênh conda-forge bằng cách thêm conda-forge vào các kênh của bạn với. .
cấu hình conda --thêm kênh conda-forge cấu hình conda --đặt channel_priority nghiêm ngặt. .
conda cài đặt websocket-client. .
mamba cài đặt websocket-client. .
conda tìm kiếm websocket-client --channel conda-forge

Làm cách nào để cài đặt ứng dụng khách WebSocket trong Ubuntu?

Thiết lập WebSockets an toàn trên máy chủ Ubuntu .
Bước 1. Cài đặt Nút và Gói WS. Cài đặt Node/npm [trình quản lý gói nút].
Bước 2. Quyết định cổng websocket và nhận/sử dụng chứng chỉ SSL. .
Bước 3. Chạy máy chủ websocket qua systemd

Làm cách nào để kiểm tra phiên bản WebSocket trong Python?

Làm cách nào để kiểm tra phiên bản gói 'websocket-client' bằng Python? .
Phương pháp 1. pip hiển thị websocket-client. .
Phương pháp 2. danh sách pip
Phương pháp 3. danh sách pip. findstr websocket-client
Phương pháp 4. thư viện. __phiên bản__
Phương pháp 5. nhập khẩu. metadata. phiên bản. .
Phương pháp 6. danh sách conda
Phương pháp 7. đóng băng pip
Phương pháp 8. đóng băng pip. grep websocket-client

Chủ Đề