Многие те, кто используют a-poster, наверняка знают о возможности использования своих функций. В данном примере я рассмотрю использование функции, которую предоставляет сам автор и передачу ей данных с помощью плагина для R-dorgen. Так как функция берет файлы со ссылками прямо из своей папки, то приходится заливать эти файлы туда. Конечно, эту функцию для удобства можно переписать, но я этого делать не стал. Для этого я написал простой php обработчик, который заливает файлы в папку с функцией. Описание параметров задания и саму функцию можно взять у автора на форуме, после покупки.
Плагин для R-dorgen:
class aposter(object):
def run(self,domain,keywords,keyurl,pages):
from grab import Grab
g = Grab()
# Заливка файла со ссылками на сервер с a-poster
data = open("data/lnk/{0}.txt".format(domain)).read().decode("utf-8")
g.setup(url='http://domain.ru/upl.php',
post={'name':domain+'.txt','data':data,'pw':'xek' },
timeout=150
)
g.request()
# Передача задания для a-poster
g.setup(url='http://domain.ru/a-poster/external.pl',
payload="""<password></password>
<base>useit.txt</base>
<tasktype>spam</tasktype>
<spamtype>myfunc</spamtype>
<myfuncbulk>1</myfuncbulk>
<myfuncfile>func.pl</myfuncfile>
<checkpost>0</checkpost>
<checkpostminpr>0</checkpostminpr>
<checkpostmaxlinks>0</checkpostmaxlinks>
<saveparsed>0</saveparsed>
<readonlyheader>1</readonlyheader>
<savegood>0</savegood>
<saveforcheck>0</saveforcheck>
<proxy>noproxy</proxy>
<log>no</log>
<start>0</start>
<end>0</end>
<name>TestName</name>
<mail></mail>
<url></url>
<comment>{0}.txt;3;4</comment>
<quantification>1</quantification>""".format(domain))
g.request()
# Вывод результата
print g.response_body
PHP заливщик файлов(upl.php):
< ?php
if ($_POST['pw']=='xek') {
$data = $_POST['data'];
$name = $_POST['name'];
$fp = fopen("a-poster/my_functions/{$name}",'w');
fwrite($fp,$data);
fclose($fp);
}
?>
Всё что требуется потом: залить php обработчик,правильно указать настройки задания для a-poster и закинуть плагин в папку с доргеном.
В результате весь процесс получается автоматизированным, ручной работы почти нет, кроме добавления заданий в пакетку доргена
Категория
Programming |