Форум программистов, компьютерный форум, киберфорум
Наши страницы

C# .NET

Войти
Регистрация
Восстановить пароль
 
fiphiker
#1

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

02.09.2011, 11:18. Просмотров 997. Ответов 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()
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.09.2011, 11:18
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Перевести код из Python в C# или подключить файл .py к C# (C#):

Перевести код с Python на C# - C#
перевести и Python на C# import sys lineIn = sys.stdin.readline().split(&quot; &quot;) n = int(lineIn) m = int(lineIn) fibPrev = 0 ...

Перевести код с VBscript, или как показать сообщение - C#
Есть примитивная прога на VBS a =MsgBox (&quot;Текст первой формы&quot;,35,&quot;заголовок первой формы&quot; ) if a=6 Then MsgBox &quot;Текст второй...

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

Перевести код с С++ на Python - Python
Задача такова. Дан символьный массив. Вывести на печать те слова, в которых первая буква слова встречается в нём ещё 1 раз. Задача сделана...

Перевести код с С++ на Python - Python
Задача такова. Переместить байты по заданному алгоритму, есть пример файла, параметры Width = 256, Height = 256 ...

Перевести код с C# на Python - Python
Привет всем, помогите пожалуйста переписать код с C# на python, буду очень благодарна :) public static int IntegralImage(int...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.09.2011, 11:18
Привет! Вот еще темы с ответами:

Перевести код с Python - C++
только вот не могу понять что делает операция return, после print ans, как дальше написать в c++ формате? def gen(n, count, stack,...

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

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

Перевести код с C# на python - Python
Здравствуйте, помоге перевести код с C# на python или хотя бы написать что нибудь подобное... string url = &quot;https://www.youtube.com/&quot;; ...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru