HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 13.12.2009, 15:02
whexp
Познающий
Регистрация: 30.11.2009
Сообщений: 97
С нами: 8655837

Репутация: 80
По умолчанию

2rushter, ну просто win-консоль использует cp866, сайты вообще используют кто utf-8, кто cp1251, кто koi8-r. поэтому и приходится перекодировать.
 
Ответить с цитированием

  #2  
Старый 13.12.2009, 15:59
TRX.new
Участник форума
Регистрация: 27.04.2009
Сообщений: 189
С нами: 8968720

Репутация: 69
По умолчанию

Код:
from numpy import *
from math import *
b1 = b2 = b3 = b4 = 1
ex = matrix('75,33,75;68,15,68;39,9,39;16,25,16;58,48,58;53,5,53;61,63,61;47,72,47;99,29,99;33,17,33;97,80,97;29,61,29;16,23,16;13,32,13;72,77,72;43,67,43;84,34,84;100,13,100;81,13,81;63,11,63')
Y = [0.00077385, 0.00042372, 8.8133, 4.5851, 9,4883, 0.0011336, 0.0011336, 0.10767, 0.43098, 0.80050, 0.00061111, 0.0031792, 44.0359, 0.01448, 0.0075917, 0.00026723, 0.000036466, 0.000095717, 0.000047435, 24.336]
m=20
n=4
eps=0.00001
X = zeros([m,n])
E = zeros([m,1])
B = zeros([n,1])
A = zeros([n,n])
bb1=bb2=bb3=bb4=k=0
while not ((abs((b1-bb1)/b1)<eps) and (abs((b2-bb2)/b2)<eps) and (abs((b3-bb3)/b3)<eps) and (abs((b4-bb4)/b4)<eps)):
    k=k+1
    print 'iteracya nomer', k
    print ''
    for element in range(0,m):
     n1 = sin(b4*ex[element,2])*((b1+b2*ex[element,0]**2+cos(b3*ex[element,1])))**(sin(b4*ex[element,2])-1)
     n2 = (sin(b4*ex[element,2])*((b1+b2*ex[element,0]**2+cos(b3*ex[element,1])))**(sin(b4*ex[element,2])-1))*ex[element,0]**2
     n3 = (sin(b4*ex[element,2])*((b1+b2*ex[element,0]**2+cos(b3*ex[element,1])))**(sin(b4*ex[element,2])-1))*(-sin(b3*ex[element,2])*ex[element,2])
     n4 = (sin(b4*ex[element,2])*((b1+b2*ex[element,0]**2+cos(b3*ex[element,1])))**(sin(b4*ex[element,2])))*log(b1+b2*ex[element,0]**2+cos(b3*ex[element,1]))*cos(ex[element,2]*b4)*ex[element,2]
     X[element,0] = n1
     X[element,1] = n2
     X[element,2] = n3
     X[element,3] = n4
     E[element,0] = Y[element]-(b1+b2*ex[element,0]**2+cos(b3*ex[element,1]))**sin(b4*ex[element,2])

    print 'matrix X:'
    print X
    A = dot(X.T,X)
    A = linalg.inv(A)
    Z = dot(X.T,E)
    B = dot(A,Z)
    print 'matrix B:'
    print B
    bb1=b1
    bb2=b2
    bb3=b3
    bb4=b4
    b1=b1+B[0]
    b2=b2+B[1]
    b3=b3+B[2]
    b4=b4+B[3]
    print b1,b2,b3,b4,k

трабла: на 3ей итерации: ValueError: math domain error...

wtf?!
 
Ответить с цитированием

  #3  
Старый 13.12.2009, 21:42
TRX.new
Участник форума
Регистрация: 27.04.2009
Сообщений: 189
С нами: 8968720

Репутация: 69
По умолчанию

Цитата:
Сообщение от TRX.new  
Код:
from numpy import *
from math import *
b1 = b2 = b3 = b4 = 1
ex = matrix('75,33,75;68,15,68;39,9,39;16,25,16;58,48,58;53,5,53;61,63,61;47,72,47;99,29,99;33,17,33;97,80,97;29,61,29;16,23,16;13,32,13;72,77,72;43,67,43;84,34,84;100,13,100;81,13,81;63,11,63')
Y = [0.00077385, 0.00042372, 8.8133, 4.5851, 9,4883, 0.0011336, 0.0011336, 0.10767, 0.43098, 0.80050, 0.00061111, 0.0031792, 44.0359, 0.01448, 0.0075917, 0.00026723, 0.000036466, 0.000095717, 0.000047435, 24.336]
m=20
n=4
eps=0.00001
X = zeros([m,n])
E = zeros([m,1])
B = zeros([n,1])
A = zeros([n,n])
bb1=bb2=bb3=bb4=k=0
while not ((abs((b1-bb1)/b1)<eps) and (abs((b2-bb2)/b2)<eps) and (abs((b3-bb3)/b3)<eps) and (abs((b4-bb4)/b4)<eps)):
    k=k+1
    print 'iteracya nomer', k
    print ''
    for element in range(0,m):
     n1 = sin(b4*ex[element,2])*((b1+b2*ex[element,0]**2+cos(b3*ex[element,1])))**(sin(b4*ex[element,2])-1)
     n2 = (sin(b4*ex[element,2])*((b1+b2*ex[element,0]**2+cos(b3*ex[element,1])))**(sin(b4*ex[element,2])-1))*ex[element,0]**2
     n3 = (sin(b4*ex[element,2])*((b1+b2*ex[element,0]**2+cos(b3*ex[element,1])))**(sin(b4*ex[element,2])-1))*(-sin(b3*ex[element,2])*ex[element,2])
     n4 = (sin(b4*ex[element,2])*((b1+b2*ex[element,0]**2+cos(b3*ex[element,1])))**(sin(b4*ex[element,2])))*log(b1+b2*ex[element,0]**2+cos(b3*ex[element,1]))*cos(ex[element,2]*b4)*ex[element,2]
     X[element,0] = n1
     X[element,1] = n2
     X[element,2] = n3
     X[element,3] = n4
     E[element,0] = Y[element]-(b1+b2*ex[element,0]**2+cos(b3*ex[element,1]))**sin(b4*ex[element,2])

    print 'matrix X:'
    print X
    A = dot(X.T,X)
    A = linalg.inv(A)
    Z = dot(X.T,E)
    B = dot(A,Z)
    print 'matrix B:'
    print B
    bb1=b1
    bb2=b2
    bb3=b3
    bb4=b4
    b1=b1+B[0]
    b2=b2+B[1]
    b3=b3+B[2]
    b4=b4+B[3]
    print b1,b2,b3,b4,k

трабла: на 3ей итерации: ValueError: math domain error...

wtf?!
Разобрался.. при вычислениях получается вырожденная матрица (Singular matrix) и поэтому в результирующую матрицу заносятся NaN ... судя по всему косяк в начальных данных..
 
Ответить с цитированием

  #4  
Старый 13.12.2009, 19:07
login999
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
С нами: 9427413

Репутация: 973


По умолчанию

2 TRX.new
лично я - хз...
 
Ответить с цитированием

  #5  
Старый 13.12.2009, 19:46
cupper
Постоянный
Регистрация: 06.06.2007
Сообщений: 575
С нами: 9963746

Репутация: 180


По умолчанию

Есть текст, одной строкой, вот кусок из него
Цитата:
idden\" name=\"fid\" id=\"fid\" value=\"9410924\" \/>\n <input type=\"hidden\" name=\"hash\" id=\"hash\" value=\"1260718814_aa0256f3b89294f28b\" \/>\n <input type=\"hidden\" name=\"cats\" id=\"privacy_cats\" \/>\n <input type=\"hi
мне нужно из него получить значение hash'a 1260718814_aa0256f3b89294f28b
Делаю так
Цитата:
print re.findall(r'id=\"hash\" value=\"(.*?)\"',data.read())
ничего ненаходит. Ну собсна я и неждал что это чтото найдет ибо это ваще какаято черная магия, пытался найти описание функции на русском, нихрена ненашол. Только посты на разных форумах, из чего примерно слепил свои параметры, но увы

PS. вот такой черной магие решил задачу
Цитата:
hash = re.findall(r'id=."hash."\svalue=."(.*?)."', data)[0]

Последний раз редактировалось cupper; 13.12.2009 в 20:31..
 
Ответить с цитированием

  #6  
Старый 13.12.2009, 20:33
login999
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
С нами: 9427413

Репутация: 973


По умолчанию

Код:
import re

a = '''idden\" name=\"fid\" id=\"fid\" value=\"9410924\" \/>\n <input type=\"hidden\" name=\"hash\" id=\"hash\" value=\"1260718814_aa0256f3b89294f28b\" \/>\n <input type=\"hidden\" name=\"cats\" id=\"privacy_cats\" \/>\n <input type=\"hi'''
hash_val = re.findall(r'''\"hash\"\ value\=\"(.*?)\"''', a)
print hash_val
P.S> Лентяй
 
Ответить с цитированием

  #7  
Старый 13.12.2009, 22:06
cupper
Постоянный
Регистрация: 06.06.2007
Сообщений: 575
С нами: 9963746

Репутация: 180


По умолчанию

Цитата:
Сообщение от login999  
Код:
import re

a = '''idden\" name=\"fid\" id=\"fid\" value=\"9410924\" \/>\n <input type=\"hidden\" name=\"hash\" id=\"hash\" value=\"1260718814_aa0256f3b89294f28b\" \/>\n <input type=\"hidden\" name=\"cats\" id=\"privacy_cats\" \/>\n <input type=\"hi'''
hash_val = re.findall(r'''\"hash\"\ value\=\"(.*?)\"''', a)
print hash_val
P.S> Лентяй
спс, тока я там в посте дописал что смог получить сам hash
 
Ответить с цитированием

  #8  
Старый 14.12.2009, 22:44
[Dezzter]
Участник форума
Регистрация: 26.11.2007
Сообщений: 266
С нами: 9714566

Репутация: 341
По умолчанию

Рабочий код:
PHP код:
import urllib2
proxy_handler 
urllib2.ProxyHandler({'http''174.142.104.57:3128'})
opener urllib2.build_opener(proxy_handler)
opener.open('http://2ip.ru/'
Не рабочий:
PHP код:
import urllib2
proxy_handler 
urllib2.ProxyHandler({'http''174.142.104.57:3128'})
opener urllib2.build_opener(proxy_handler)
opener.open('http://my_site.ru/test.php'
Вообще ни чего не понимаю, бред какой-то.. Создал страничку на своём сайте, обычный пхп скрипт, который записывает в тхт IP зашедших людей.. Так вот, первый код работает, всё норм Как только заменяю 2ip.ru на свой сайт, то сыпятся ошибки:

Код:
Traceback (most recent call last):
  File "C:\Python26\Python Sorce\test.py", line 14, in <module>
    opener.open(http://my_site.ru/test.php').read()
  File "C:\Python26\lib\urllib2.py", line 395, in open
    response = meth(req, response)
  File "C:\Python26\lib\urllib2.py", line 508, in http_response
    'http', request, response, code, msg, hdrs)
  File "C:\Python26\lib\urllib2.py", line 433, in error
    return self._call_chain(*args)
  File "C:\Python26\lib\urllib2.py", line 367, in _call_chain
    result = func(*args)
  File "C:\Python26\lib\urllib2.py", line 516, in http_error_default
    raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
HTTPError: HTTP Error 403: Forbidden
Просто не могу понять почему не работает, страница работает, всё норм
 
Ответить с цитированием

  #9  
Старый 14.12.2009, 22:56
login999
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
С нами: 9427413

Репутация: 973


По умолчанию

Цитата:
Сообщение от [Dezzter]  
Рабочий код:
PHP код:
import urllib2
proxy_handler 
urllib2.ProxyHandler({'http''174.142.104.57:3128'})
opener urllib2.build_opener(proxy_handler)
opener.open('http://2ip.ru/'
Не рабочий:
PHP код:
import urllib2
proxy_handler 
urllib2.ProxyHandler({'http''174.142.104.57:3128'})
opener urllib2.build_opener(proxy_handler)
opener.open('http://my_site.ru/test.php'
Вообще ни чего не понимаю, бред какой-то.. Создал страничку на своём сайте, обычный пхп скрипт, который записывает в тхт IP зашедших людей.. Так вот, первый код работает, всё норм Как только заменяю 2ip.ru на свой сайт, то сыпятся ошибки:

Код:
Traceback (most recent call last):
  File "C:\Python26\Python Sorce\test.py", line 14, in <module>
    opener.open(http://my_site.ru/test.php').read()
  File "C:\Python26\lib\urllib2.py", line 395, in open
    response = meth(req, response)
  File "C:\Python26\lib\urllib2.py", line 508, in http_response
    'http', request, response, code, msg, hdrs)
  File "C:\Python26\lib\urllib2.py", line 433, in error
    return self._call_chain(*args)
  File "C:\Python26\lib\urllib2.py", line 367, in _call_chain
    result = func(*args)
  File "C:\Python26\lib\urllib2.py", line 516, in http_error_default
    raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
HTTPError: HTTP Error 403: Forbidden
Просто не могу понять почему не работает, страница работает, всё норм
Жаголовки....
Тебе доштуп к штранице запрешен
 
Ответить с цитированием

  #10  
Старый 15.12.2009, 23:57
Chubakur
Познающий
Регистрация: 06.04.2009
Сообщений: 69
С нами: 8998764

Репутация: 39
По умолчанию

Для того чтобы научится питону я попытался написать граббер картинок. То есть запускаешь скрипт, он просит ввести url страницы, ты его пишешь. И программа начинает скачивать оттуда все картинки и сохранять их в папку, которая называется именем сайта откуда скачиваешь. После этого я решил в качестве тренировки дополнить это GUI, для этого я заюзал GTK, и сразу же столкнулся с проблемой. Сам интерфейс выглядит просто, сверху окно для ввода URL, ниже кнопка, ниже окно куда выводится лог. После того как я ввожу url и жму на кнопку, форма зависает. И только после того как все картинки закачаются. Форма развисает, и лог в окне написан уже целиком. Насколько я понимаю, проблема в том, что при нажатии на кнопку у меня выполняется функция-обработчик которая все качает, и поэтому GTK неактивно. То-есть функция обработчик вызывает другие функции, и ждет пока они выполнятся. Я решил, что можно тогда из под обработчика функции вызывать не напрямую, а с передачей управления, например call. Однако , похожих команд для питона я не нашел. Каким образом можно решить эту проблему, чтобы интерфейс стал динамическим ? То-есть закачка производилась как бы в фоне. Например, скачалась картинка - добавилась строчка лога. И так до конца программы.

P.S. Кстати, я тут придумал как решить это извращенным способом. При нажатии на кнопку будет менятся значение булевой переменной, также будет таймер, который каждые n миллисекунд вызывает функцию. Функция эта будет проверять:
if значение_переменной_true:
тормозим таймер, и начинаем выполнять все те функции, сбрасываем значение переменной
else
return


Сильно ли это отразится на производительности?

Последний раз редактировалось Chubakur; 16.12.2009 в 00:29..
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.