Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
fiphiker

Перевести код из Python в C# или подключить файл .py к C#

02.09.2011, 11:18. Показов 1471. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здраствуйте, можете помочь перевести код из Python в C# или подключить файл .py к C#
Суть программы в том, чтобы отправлять Смс используя mail.агент
Python
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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
#!/usr/bin/env python
# coding=utf-8
'''
 sms_mrim_client.py
  [url]http://agent.mail.ru/ru/help/3/2.html[/url] - поддерживаемые операторы
 '''
import socket, string, sys
from struct import *
'''
 Конфигурационные данные
 '''
 LOGIN    = '' # e-mail
 PASSWORD = '' # пароль
 NUMBER   = '' # номер телефона
 TEXT         = "" # текст сообщения
'''
 The End of config
 '''
 PROTO_VERSION               = 0x10008    # версия протокола
 CS_MAGIC                            = 0xDEADBEEF # тип магическая хрень (начало заголовка пакета)
 MRIM_CS_HELLO                   = 0x1001     # приветсвуем сервер
 MRIM_CS_HELLO_ACK       = 0x1002     # получаем ответный привет
 MRIM_CS_LOGIN2          = 0x1038     # пытаемся залогиниться
 MRIM_CS_LOGIN_ACK     = 0x1004     # ответ в случае успешной авторизации
 MRIM_CS_SMS                     = 0x1039         # шлём СМСку
 MRIM_CS_SMS_ACK             = 0x33A          # читаем статус СМСки
 MRIM_CS_STATUS_ONLINE = 0x00000001 # логинимся со статусом On-line
 
# получаем адрес куда будет конектиться
def get_host_port():
     s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
     s.connect(('mrim.mail.ru', 2042))
     s.send("GET / HTTP 1.1\r\n\r\n")
     data = s.recv(128)
     s.close()
     return data
# ф-ция по созданию пакета приветствия
def packet_make(msg, seq=1, mydata=''):
     formt = '<5L'
     dlen = len(mydata)
     my_header = pack(formt, CS_MAGIC, PROTO_VERSION, seq, msg, dlen) + pack('<L', 0)*6
     return my_header
     
# ф-ция авторизации
def mrim_login(login=LOGIN, password=PASSWORD, client='pymra 0.1beta'):
     formt = '<5L'
     mydata = pack('<L', len(login)) + login + pack('<L', len(password)) + password + pack('<L', MRIM_CS_STATUS_ONLINE) + pack('<L', len(client)) + client + pack('<L', 0)*5
     dlen = len(mydata)
     my_header_login = pack(formt, CS_MAGIC, PROTO_VERSION, 2, MRIM_CS_LOGIN2, dlen) + pack('<L', 0)*6 + mydata
     return my_header_login
 
# ф-ция отправки SMS    
def sms_send(number=NUMBER, text=TEXT):
     formt = '<5L'
     mydata = pack('<L', 0) + pack('<L', len(number)) + number + pack('<L', len(text)) + text
     dlen = len(mydata)
     my_header_sms = pack(formt, CS_MAGIC, PROTO_VERSION, 3, MRIM_CS_SMS, dlen) + pack('<L', 0)*6 + mydata
     return my_header_sms
 
def main():     
     host_port = get_host_port().split(':')  
     my_header = packet_make(MRIM_CS_HELLO, 1)
     my_header_login = mrim_login()
     my_header_sms = sms_send()  
     s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
     s.connect((host_port[0], int(host_port[1])))    
     s.send(my_header)
     data = s.recv(48)
     resp = unpack('12L', data)
     if resp[3] == MRIM_CS_HELLO_ACK:
         print "[+] Подключились!"
     else:
         print "[!] Не подключились!"
         sys.exit(0)
     s.send(my_header_login)
     data_l = s.recv(48)
     resp_l = unpack('12L', data_l)
     if resp_l[3] == MRIM_CS_LOGIN_ACK:
         print "[+] Залогинились!"
     else:
         print "[!] Проверьте логин и пароль!"
         sys.exit(0) 
     s.send(my_header_sms)
     data_s = s.recv(48)
     resp_s = unpack('12L', data_s)  
     if resp_s[3] == MRIM_CS_SMS_ACK:
         print "[+] SMS отправили!"
     else:
         print "[!] SMS не отправили :("
         sys.exit(0) 
     s.close()
     
if __name__ == "__main__":
     main()
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.09.2011, 11:18
Ответы с готовыми решениями:

Перевести код на Python или С++
Есть готовый и рабочий код на Pascal, тестирующая система не принимает этот язык. Java я не знаю, поэтому прошу знающих перевести этот код...

Подключить код python к c#
есть задача: подкючить код python в c# проекту и работать с ним. Например: в textbox пользователь ввёл &quot;353453&quot; и это нужно...

Перевести код с C# на Python
private void textBox1_TextChanged(object sender, EventArgs e) { string words = GetStringFromFile(&quot;D:\\text.txt&quot;).Split(' '); ...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
02.09.2011, 11:18
Помогаю со студенческими работами здесь

Перевести код с Python на C#
Здравствуйте. Нашел в интернете (на этом сайте) пример программы по линейном программированию написанную на python. Пытался перевести код...

Перевести код с Python
Народ, нужно программу в python переписать в си. Подскажите как это лчше реализовать. Вот код, написанный в python. #!/usr/bin/env...

Перевести код с Python на C++
Форумчане нужна помощь, надо перевести код из Python на C++ n = int(input()) data = + print(data) def...

Перевести код с С++ на Python
#include &lt;iostream&gt; #include &lt;cstdio&gt; #include &lt;cmath&gt; using namespace std; int main() { double Z,xn,xk,h,t,x; ...

Перевести код с С++ на Python
#include &lt;iostream&gt; #include&lt;cstdio&gt; #include&lt;cmath&gt; using namespace std; int main() { const int n=20; int X; int Y; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru