<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Блог дорвейщика &#187; Программирование</title>
	<atom:link href="http://aboutdoorways.com/post/category/%d0%bf%d1%80%d0%be%d0%b3%d1%80%d0%b0%d0%bc%d0%bc%d0%b8%d1%80%d0%be%d0%b2%d0%b0%d0%bd%d0%b8%d0%b5/feed" rel="self" type="application/rss+xml" />
	<link>http://aboutdoorways.com</link>
	<description>Много мыслей о дорвеях, продвижении и онлайн бизнесе в целом</description>
	<lastBuildDate>Wed, 18 Jan 2012 14:34:32 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
		<item>
		<title>В помощь дорвейщику &#8211; Pulse CMS</title>
		<link>http://aboutdoorways.com/post/384</link>
		<comments>http://aboutdoorways.com/post/384#comments</comments>
		<pubDate>Mon, 30 Aug 2010 09:23:54 +0000</pubDate>
		<dc:creator>inlanger</dc:creator>
				<category><![CDATA[Дорвеи]]></category>
		<category><![CDATA[Программирование]]></category>
		<category><![CDATA[cms]]></category>

		<guid isPermaLink="false">http://aboutdoorways.com/?p=384</guid>
		<description><![CDATA[Я думаю что почти все дорвейщики и сталлитчики сталкивались с ситуацией, когда заливаешь свой дорвей/сателлит на хостинг, а потом находишь какой-то глюк в шаблоне, ключе, да или просто нужно что-то изменить. Чаще всего что мы делаем? Выкачиваем нужные файлы для изменения обратно на свой компьютер делаем нужные изменения и льём ...]]></description>
			<content:encoded><![CDATA[<p><a href="http://aboutdoorways.com/wp-content/uploads/2010/08/pulsecms.jpg"><img class="alignleft size-full wp-image-386" style="margin-right: 10px;" title="pulsecms" src="http://aboutdoorways.com/wp-content/uploads/2010/08/pulsecms.jpg" alt="" width="170" height="170" /></a>Я думаю что почти все дорвейщики и сталлитчики сталкивались с ситуацией, когда заливаешь свой дорвей/сателлит на хостинг, а потом находишь какой-то глюк в шаблоне, ключе, да или просто нужно что-то изменить. Чаще всего что мы делаем? Выкачиваем нужные файлы для изменения обратно на свой компьютер делаем нужные изменения и льём файлы обратно. Но я недавно я открыл для себя очень удобную CMS для работы со статичными сайтами &#8211; <a href="http://pulsecms.com/">Pulse CMS</a>. Эта простая система управления контентом создана для упрощения работы со статичными сайтами. Каждая html страница сайта отображается как блок(Block) в админке, и может быть отредактирована в удобном визуальном редакторе. В Pro версии(15$) доступно создание подобия блога/новостной ленты и фотогалереи(подойдёт сателлитчикам), а так же &#8211; загрузка контента из пдф, создание папок для блоков и техническая поддержка. Ещё одна, довольно полезная и удобная функция этой CMS &#8211; это создание полных бекапов сайта. Базовая версия полностью бесплатная и может работать на любом хостинге где установлен php5.</p>
<p><img class="aligncenter" title="pulsecms" src="http://pulsecms.com/img/screen2.png" alt="" width="600" height="366" /></p>
<p>Для начала работы просто залейте папку с CMS к вашему дорвею или сателлиту, перейдите на индексную страницу, введите пароль demo(по умолчанию) и вы попадёте в удобную админку, которая уже готова к работе. Всё просто и понятно, и избавляет Вас от лишних движений, а значи дарит Вам драгоценное время, которое можно потратить на что-нибудь более полезное.</p>
]]></content:encoded>
			<wfw:commentRss>http://aboutdoorways.com/post/384/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Написание своего реггера на Python. Часть 2</title>
		<link>http://aboutdoorways.com/post/290</link>
		<comments>http://aboutdoorways.com/post/290#comments</comments>
		<pubDate>Mon, 22 Feb 2010 12:36:59 +0000</pubDate>
		<dc:creator>inlanger</dc:creator>
				<category><![CDATA[Программирование]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[twill]]></category>

		<guid isPermaLink="false">http://aboutdoorways.com/?p=290</guid>
		<description><![CDATA[Пришло время второй статьи по этой теме, в которой я расскажу как написать простую программу отправки формы на сайте, и покажу, как это работает на примере Google Addurl. К этой статье нужно приступить после того, как вы установили всё что нужно.  Итак, для начала нужно запомнить простой список основных команд ...]]></description>
			<content:encoded><![CDATA[<p><a href="http://aboutdoorways.com/wp-content/uploads/2010/01/smilingpython.gif"><img class="alignleft size-full wp-image-224" style="margin-right: 10px;" title="smilingpython" src="http://aboutdoorways.com/wp-content/uploads/2010/01/smilingpython.gif" alt="" width="280" height="280" /></a>Пришло время второй статьи по этой теме, в которой я расскажу как написать простую программу отправки формы на сайте, и покажу, как это работает на примере Google Addurl. К этой статье нужно приступить после того, как вы <a href="http://aboutdoorways.com/post/221">установили</a> всё что нужно.  Итак, для начала нужно запомнить простой список основных команд twill, для того, чтобы можно было дальше с ним работать. Итак:</p>
<p><strong>go(&#8216;url&#8217;)</strong> &#8211; команда перехода по конкретному адресу. В скобках указываем url.</p>
<p><strong>show()</strong> &#8211; функция возвращает html код страницы, одновременно выводя его на экран. Например код html = show() присвоит переменной html код текущей страницы.</p>
<p><strong>showforms()</strong> &#8211; выводит на экран все формы, которые есть на текущей странице. Это функция обычно используется на этапе написания программы для того, чтобы видеть, с какими формами мы будем работать. Что полезно &#8211; функция выводит и номера форм, которые вы будете в дальнейшем использовать.</p>
<p><strong>formclear(&#8217;1&#8242;)</strong> &#8211; функция очищает форму под номером 1</p>
<p><strong>fv(&#8217;1&#8242;, &#8216;name&#8217;, &#8216;value&#8217;)</strong> &#8211; функция заполняет поле формы каким-то значением. Первый параметр &#8211; номер формы, второй &#8211; имя поля, которое нужно заполнить, третий &#8211; значение поля.</p>
<p><strong>submit()</strong> &#8211; функция сабмитит(отправляет) форму как при нажатии кнопки. В скобках можно указать, какую именно кнопку нужно нажать(цифрой).</p>
<p>Итак, с помощью этих основных команд мы уже можем написать программу addurl в поисковик google. Итак, смотрим код:</p>
<div id="wpshdo_3" class="wp-synhighlighter-outer"><div id="wpshdt_3" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_3"></a><a id="wpshat_3" class="wp-synhighlighter-title" href="#codesyntax_3"  onClick="javascript:wpsh_toggleBlock(3)" title="Click to show/hide code block">Вход на сайт и просмотр форм</a></td><td align="right"><a href="#codesyntax_3" onClick="javascript:wpsh_code(3)" title="Show code only"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_3" onClick="javascript:wpsh_print(3)" title="Print code"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_3" class="wp-synhighlighter-inner" style="display: block;"><pre class="python" style="font-family:monospace;"><ol><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #808080; font-style: italic;">#!/usr/bin/env python</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #808080; font-style: italic;"># -*- coding: utf-8 -*-</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp;</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #ff7700;font-weight:bold;">from</span> twill.<span style="color: #dc143c;">commands</span> <span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #66cc66;">*</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">go<span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;http://www.google.com/intl/ru/addurl.html&quot;</span><span style="color: black;">&#41;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">showforms<span style="color: black;">&#40;</span><span style="color: black;">&#41;</span></div></li></ol></pre></div></div><br />
<a href="http://aboutdoorways.com/wp-content/uploads/2010/02/screen1.gif"><img class="aligncenter size-medium wp-image-292" title="screen1" src="http://aboutdoorways.com/wp-content/uploads/2010/02/screen1-300x156.gif" alt="" width="300" height="156" /></a><br />
Итак, мы видим что успешно перешли по заданному адресу(1) и ниже список форм. Нас интересует вторая форма(2), её нам и надо заполнить. Изменяем наш скрипт на:</p>
<p><div id="wpshdo_4" class="wp-synhighlighter-outer"><div id="wpshdt_4" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_4"></a><a id="wpshat_4" class="wp-synhighlighter-title" href="#codesyntax_4"  onClick="javascript:wpsh_toggleBlock(4)" title="Click to show/hide code block">Заполнение и сабмит формы</a></td><td align="right"><a href="#codesyntax_4" onClick="javascript:wpsh_code(4)" title="Show code only"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_4" onClick="javascript:wpsh_print(4)" title="Print code"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_4" class="wp-synhighlighter-inner" style="display: block;"><pre class="python" style="font-family:monospace;"><ol><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #808080; font-style: italic;">#!/usr/bin/env python</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #808080; font-style: italic;"># -*- coding: utf-8 -*-</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp;</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #ff7700;font-weight:bold;">from</span> twill.<span style="color: #dc143c;">commands</span> <span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #66cc66;">*</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp;</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">go<span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;http://www.google.com/intl/ru/addurl.html&quot;</span><span style="color: black;">&#41;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">fv<span style="color: black;">&#40;</span><span style="color: #483d8b;">'2'</span>,<span style="color: #483d8b;">'q'</span>, <span style="color: #483d8b;">'http://google.com'</span><span style="color: black;">&#41;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">fv<span style="color: black;">&#40;</span><span style="color: #483d8b;">'2'</span>,<span style="color: #483d8b;">'dq'</span>, <span style="color: #483d8b;">'This is google!'</span><span style="color: black;">&#41;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">submit<span style="color: black;">&#40;</span><span style="color: black;">&#41;</span></div></li></ol></pre></div></div>
<p>Итак, что мы сделали?</p>
<ol>
<li>Импортировали в программу нужную библиотеку</li>
<li>Перешли по нужному адресу</li>
<li>Заполнили поля нужной формы</li>
<li>Отправили форму</li>
</ol>
<p>В следущей части я расскажу о том, как работать со списками ссылок для addurl, выложу свой модуль для работы с сервисом распознавания капчи и покажу как работать с формами с капчёй.</p>
<p><em>А пока я писал этот пост iron-viper обновил и дизайн своего </em><a href="http://seo-viper.ru/"><em>блога о сео</em></a><em>.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://aboutdoorways.com/post/290/feed</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>Установка и настройка proxy на VDS</title>
		<link>http://aboutdoorways.com/post/246</link>
		<comments>http://aboutdoorways.com/post/246#comments</comments>
		<pubDate>Wed, 27 Jan 2010 15:45:54 +0000</pubDate>
		<dc:creator>inlanger</dc:creator>
				<category><![CDATA[Программирование]]></category>
		<category><![CDATA[proxy]]></category>

		<guid isPermaLink="false">http://aboutdoorways.com/?p=246</guid>
		<description><![CDATA[
В жизни дорвейщика случается много ситуаций, когда не стоит светить своим настоящим IP. Есть много способов, как его скрыть или подменить. Самым простым является использование интернета через прокси. А самым простым способом поднять прокси является 3proxy. Софт мультиплатформенный, но так как на Windows почти нет никаких сложностей в запуске и ...]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="size-full wp-image-250  aligncenter" title="1261301677_proxy" src="http://aboutdoorways.com/wp-content/uploads/2010/01/1261301677_proxy1.jpg" alt="" width="400" height="383" /></p>
<p>В жизни дорвейщика случается много ситуаций, когда не стоит светить своим настоящим IP. Есть много способов, как его скрыть или подменить. Самым простым является использование интернета через прокси. А самым простым способом поднять прокси является 3proxy. Софт мультиплатформенный, но так как на Windows почти нет никаких сложностей в запуске и настройке, то я расскажу подробно и настройке в Linux. Windows пользователи могут почерпнуть только информацию о конфиг файле. Установку я буду рассказывать на примере Debian OS, удалённый VDS. Заходим по ssh на свой сервер и качаем последнюю стабильную версию 3proxy<br />
<strong> wget http://3proxy.ru/0.6.1/3proxy-0.6.1.tgz</strong><br />
Распаковываем её<br />
<strong> tar -xvzf 3proxy-0.6.1.tgz</strong><br />
Переходим в распакованную папку<br />
<strong> cd 3proxy-0.6.1</strong><br />
и компилируем саму программу<br />
<strong> make -f Makefile.Linux</strong><br />
ждём несколько минут, пока система скомпилирует программу. После этого, у вас в папке src, рядом с исходникаму будут лежать готовые программы. Почему программы? Потому что 3proxy позволяет отдельно запускать соксы, смтп прокси и др. Нас интересует файл <strong>3proxy</strong>.<br />
Теперь создадим папки для программы, логов и статистики.<br />
<strong> mkdir /usr/local/3proxy<br />
mkdir /usr/local/3proxy/logs<br />
mkdir /usr/local/3proxy/stat</strong><br />
Если вы зашли в папку src, то выходим из неё. После этого нужно скопировать все нужные файлы в нужные папки, и копируем исполняемый файл.<br />
<strong> cp src/3proxy /usr/local/3proxy</strong><br />
Переносим файл для автозагрузки<br />
<strong> cp ./scripts/rc.d/proxy.sh /etc/init.d/3proxy</strong><br />
Записываем информацию в файл автозагрузки<br />
<strong> update-rc.d 3proxy defaults</strong><br />
Создаем чистый конфигурационный файл<br />
<strong> touch /usr/local/3proxy/3proxy.cfg</strong><br />
Далее нужно отредактировать файл конфига. Для этого я использую редактор nano(<em>sudo apt-get install nano</em>)<br />
<strong> nano /usr/local/3proxy/3proxy.cfg</strong><br />
Вставляем текст:<br />
<strong> daemon<br />
log /usr/local/3proxy/logs/3proxy.log D<br />
rotate 30<br />
users login:CL:pass<br />
auth strong<br />
proxy<br />
socks</strong><br />
Сохраняем наш файл(CTRL+X, соглашаемся на сохранение) и пробуем запустить наш прокси-сервер не забыв дать права<br />
<strong> chown -R nobody:nogroup /usr/local/3proxy<br />
/usr/local/3proxy/3proxy /usr/local/3proxy/3proxy.cfg</strong><br />
Всё, можно тестировать прокси. Стандартный порт для хттп прокси &#8211; 3128, для socks &#8211; 1080.<br />
Если всё хорошо, то нужно настроить наш прокси для автозагрузки.<br />
<strong> cd /etc/init.d/<br />
nano 3proxy</strong><br />
Редактируем файл, вписав везде путь к нашим программам. Всё, перезагружаем сервер и радуемся собственным проксям!</p>
]]></content:encoded>
			<wfw:commentRss>http://aboutdoorways.com/post/246/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Написание своего реггера на Python. Часть 1</title>
		<link>http://aboutdoorways.com/post/221</link>
		<comments>http://aboutdoorways.com/post/221#comments</comments>
		<pubDate>Mon, 18 Jan 2010 15:44:34 +0000</pubDate>
		<dc:creator>inlanger</dc:creator>
				<category><![CDATA[Программирование]]></category>
		<category><![CDATA[Софт]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[twill]]></category>

		<guid isPermaLink="false">http://aboutdoorways.com/?p=221</guid>
		<description><![CDATA[Хочу написать серию статей о том, как написать свой реггер каких-нибудь аккаунтов без использования особых знаний PHP и наличия дорогостоящего софта типа XHE. Оказывается, это не так сложно! Достаточно иметь под рукой блокнот, установленный на компьютер Python с модулем twill. Для того чтобы написать реггер аккаунтов с помощью этой связки ...]]></description>
			<content:encoded><![CDATA[<p><a href="http://aboutdoorways.com/wp-content/uploads/2010/01/smilingpython.gif"><img class="alignleft size-full wp-image-224" style="margin-right: 10px;" title="smilingpython" src="http://aboutdoorways.com/wp-content/uploads/2010/01/smilingpython.gif" alt="" width="280" height="280" /></a>Хочу написать серию статей о том, как написать свой реггер каких-нибудь аккаунтов без использования особых знаний PHP и наличия дорогостоящего софта типа XHE. Оказывается, это не так сложно! Достаточно иметь под рукой блокнот, установленный на компьютер Python с модулем twill. Для того чтобы написать реггер аккаунтов с помощью этой связки даже не нужно особых знаний программирования.</p>
<p>Первая статья будет посвящена подготовке к работе и начальной настройке необходимого софта. Для тех, кто хорошо знаком с Python эта часть не даст много информации, но я рекомендую с ней ознакомиться.</p>
<p>Я работаю в основном на Ubuntu 9.10, поэтому мануал буду писать, переодически стараясь уточнить различия под Windows. Для начала, нам необходимо установить Python. На Linux машинах, обычно, он уже установлен. Если нет -<br />
<div id="wpshdo_9" class="wp-synhighlighter-outer"><div id="wpshdt_9" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_9"></a><a id="wpshat_9" class="wp-synhighlighter-title" href="#codesyntax_9"  onClick="javascript:wpsh_toggleBlock(9)" title="Click to show/hide code block">Установка Python</a></td><td align="right"><a href="#codesyntax_9" onClick="javascript:wpsh_code(9)" title="Show code only"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_9" onClick="javascript:wpsh_print(9)" title="Print code"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_9" class="wp-synhighlighter-inner" style="display: block;"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">apt-get</span> <span style="color: #c20cb9; font-weight: bold;">install</span> python</pre></div></div><br />
Для Windows достаточно скачать и установить Python <a href="http://goo.gl/Hrrh">отсюда</a>.</p>
<p>После установки самого Python нужно установить модуль twill. Для этого заходим на официальный <a href="http://goo.gl/hB8X">сайт</a> и <a href="http://darcs.idyll.org/~t/projects/twill-0.9.tar.gz">качаем twill</a>. Теперь установка для Linux:</p>
<p>Распаковываем архив в любую папку, переходим в неё в консоли на набираем<br />
<div id="wpshdo_10" class="wp-synhighlighter-outer"><div id="wpshdt_10" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_10"></a><a id="wpshat_10" class="wp-synhighlighter-title" href="#codesyntax_10"  onClick="javascript:wpsh_toggleBlock(10)" title="Click to show/hide code block">Установка twill</a></td><td align="right"><a href="#codesyntax_10" onClick="javascript:wpsh_code(10)" title="Show code only"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_10" onClick="javascript:wpsh_print(10)" title="Print code"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_10" class="wp-synhighlighter-inner" style="display: block;"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> setup.py <span style="color: #c20cb9; font-weight: bold;">install</span></pre></div></div></p>
<p>После установки можно проверить модуль. Даём файлу twill-sh права на выполнение (chmod +x twill-sh) и запускаем его (./twill-sh). После вывода служебной информации вам выведет:<br />
<div id="wpshdo_11" class="wp-synhighlighter-outer"><div id="wpshdt_11" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_11"></a><a id="wpshat_11" class="wp-synhighlighter-title" href="#codesyntax_11"  onClick="javascript:wpsh_toggleBlock(11)" title="Click to show/hide code block">Тестирование twill</a></td><td align="right"><a href="#codesyntax_11" onClick="javascript:wpsh_code(11)" title="Show code only"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_11" onClick="javascript:wpsh_print(11)" title="Print code"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_11" class="wp-synhighlighter-inner" style="display: block;"><pre class="bash" style="font-family:monospace;">-= Welcome to twill<span style="color: #000000; font-weight: bold;">!</span> =-
current page:  <span style="color: #000000; font-weight: bold;">*</span>empty page<span style="color: #000000; font-weight: bold;">*</span></pre></div></div><br />
Это значит, что модуль установлен нормально!</p>
<p>Теперь об установке модуля на Windows:</p>
<p>Для начала качаем установщик модулей <a href="http://pypi.python.org/packages/2.6/s/setuptools/setuptools-0.6c11.win32-py2.6.exe#md5=1509752c3c2e64b5d0f9589aafe053dc">тут</a>. Потом сам <a href="http://pypi.python.org/packages/2.6/s/setuptools/setuptools-0.6c11.win32-py2.6.exe#md5=1509752c3c2e64b5d0f9589aafe053dc">twill</a>. Устанавливаем установщик, распаковывем архив с модулем. Открываем командную строку, переходим в папку с распакованным модулем и пишем python setup.py install. Если всё прошло хорошо, то модуль установился удачно.</p>
<p>Теперь небольшой тест модуля. Создаём где-нибудь файл, например test.py, и пишем в него такой код:<br />
<div id="wpshdo_12" class="wp-synhighlighter-outer"><div id="wpshdt_12" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_12"></a><a id="wpshat_12" class="wp-synhighlighter-title" href="#codesyntax_12"  onClick="javascript:wpsh_toggleBlock(12)" title="Click to show/hide code block">test.py</a></td><td align="right"><a href="#codesyntax_12" onClick="javascript:wpsh_code(12)" title="Show code only"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_12" onClick="javascript:wpsh_print(12)" title="Print code"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_12" class="wp-synhighlighter-inner" style="display: block;"><pre class="python" style="font-family:monospace;"><ol><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #ff7700;font-weight:bold;">from</span> twill.<span style="color: #dc143c;">commands</span> <span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #66cc66;">*</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">go<span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;http://www.google.com/&quot;</span><span style="color: black;">&#41;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">showforms<span style="color: black;">&#40;</span><span style="color: black;">&#41;</span></div></li></ol></pre></div></div></p>
<p>Запускаем любым удобным для вас способом(желательно через консоль и командную строку &#8211; python test.py) и скрипт переходит на google.com и показывает все формы, которые есть на странице.</p>
<p>В следующей статье я расскажу как написать простой <strong>аддурл скрипт</strong> с использованием антикапчи!</p>
]]></content:encoded>
			<wfw:commentRss>http://aboutdoorways.com/post/221/feed</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Создание простейшего плагина для Google Chrome</title>
		<link>http://aboutdoorways.com/post/170</link>
		<comments>http://aboutdoorways.com/post/170#comments</comments>
		<pubDate>Tue, 05 Jan 2010 07:43:32 +0000</pubDate>
		<dc:creator>inlanger</dc:creator>
				<category><![CDATA[Программирование]]></category>

		<guid isPermaLink="false">http://aboutdoorways.com/?p=170</guid>
		<description><![CDATA[В этой статье хочу поделится об очередном способе упростить себе жизнь, используя для этого подручные средства, а именно &#8211; самый шустрый сейчас браузер &#8211; Google Chrome. Оказывается, этот браузер не только очень шустрый, но и очень простой для разработки плагинов, и эта статья вам это докажет. Итак, нам нужно &#8211; ...]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;"><img class="alignleft" style="margin-right: 10px;" src="http://farm3.static.flickr.com/2675/4171503199_de1e7a1b7b_o.jpg" alt="" width="150" height="150" />В этой статье хочу поделится об очередном способе упростить себе жизнь, используя для этого подручные средства, а именно &#8211; самый шустрый сейчас браузер &#8211; Google Chrome. Оказывается, этот браузер не только очень шустрый, но и очень простой для разработки плагинов, и эта статья вам это докажет. Итак, нам нужно &#8211; браузер Google Chrome, желательно самой последней версии, какой-нибудь беты. Создаём любую папочку в любом месте для нашего плагина и создаём там файлы &#8211; <em>manifest.json</em>, <em>popup.html, </em><em>icon.png</em>.</p>
<p style="text-align: left;">Открываем manifest.json и пишем в нём следущий код:</p>
<p style="text-align: left;">
<div id="wpshdo_15" class="wp-synhighlighter-outer"><div id="wpshdt_15" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_15"></a><a id="wpshat_15" class="wp-synhighlighter-title" href="#codesyntax_15"  onClick="javascript:wpsh_toggleBlock(15)" title="Click to show/hide code block">manifest.json</a></td><td align="right"><a href="#codesyntax_15" onClick="javascript:wpsh_code(15)" title="Show code only"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_15" onClick="javascript:wpsh_print(15)" title="Print code"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_15" class="wp-synhighlighter-inner" style="display: block;"><pre class="xml" style="font-family:monospace;"><ol><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">{</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&quot;name&quot;: &quot;Search Engine Updates Viewer&quot;,</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&quot;version&quot;: &quot;0.1&quot;,</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&quot;description&quot;: &quot;Плагин показывает состояние апдейтов поисковой выдачи на текущую дату.&quot;,</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&quot;browser_action&quot;: {</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&quot;default_icon&quot;: &quot;icon.png&quot;,</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&quot;popup&quot;: &quot;popup.html&quot;</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">}</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">}</div></li></ol></pre></div></div>
<p>Теперь очередь второго файла:</p>
<div id="wpshdo_16" class="wp-synhighlighter-outer"><div id="wpshdt_16" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_16"></a><a id="wpshat_16" class="wp-synhighlighter-title" href="#codesyntax_16"  onClick="javascript:wpsh_toggleBlock(16)" title="Click to show/hide code block">popup.html</a></td><td align="right"><a href="#codesyntax_16" onClick="javascript:wpsh_code(16)" title="Show code only"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_16" onClick="javascript:wpsh_print(16)" title="Print code"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_16" class="wp-synhighlighter-inner" style="display: block;"><pre class="html4strict" style="font-family:monospace;"><ol><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #009900;">&lt;<a href="http://december.com/html/4/element/img.html"><span style="color: #000000; font-weight: bold;">img</span></a> <span style="color: #000066;">src</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;http://promopark.ru/analytics/informer/update.gif&quot;</span>&gt;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp;</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #009900;">&lt;<a href="http://december.com/html/4/element/div.html"><span style="color: #000000; font-weight: bold;">div</span></a> <span style="color: #000066;">align</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;center&quot;</span>&gt;&lt;<a href="http://december.com/html/4/element/a.html"><span style="color: #000000; font-weight: bold;">a</span></a> <span style="color: #000066;">style</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;font-family: Arial; color: gray; text-decoration: none; font-size: 10pt;&quot;</span> <span style="color: #000066;">target</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;_blank&quot;</span> <span style="color: #000066;">href</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;http://promopark.ru/analytics/update.php&quot;</span>&gt;</span>история<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><a href="http://december.com/html/4/element/a.html"><span style="color: #000000; font-weight: bold;">a</span></a>&gt;&lt;<span style="color: #66cc66;">/</span><a href="http://december.com/html/4/element/div.html"><span style="color: #000000; font-weight: bold;">div</span></a>&gt;</span></div></li></ol></pre></div></div>
<p><img class="alignright size-full wp-image-174" title="plugin" src="http://aboutdoorways.com/wp-content/uploads/2010/01/plugin.gif" alt="" width="147" height="109" />Третий файл это иконка. Она может быть любой картинкой, главное не забудьте изменить её имя в файле manifest.json на своё.</p>
<p>А теперь&#8230;а теперь всё <img src='http://aboutdoorways.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Можно открывать браузер, заходить по адресу <a href="chrome://extensions/">chrome://extensions/</a> , нажимать кнопочку &#8220;Загрузить распакованное расширение&#8230;&#8221;, выбирать путь к своей папке и пользоваться!</p>
<p>Может кто-то уже понял, что плагин особого ничего не делает, просто показывает небольшую картинку с одного хорошего <a href="http://goo.gl/OAnt">сайта</a>, которая показывает состояние апдейтов поисковой выдаче разных поисковиков.</p>
<p>По той ссылке, что мы загружали плагин в браузер можно из него &#8220;собрать&#8221; установочный файл. И для примера можете установить мой плагин, который я назвал &#8220;<strong><a href="http://aboutdoorways.com/wp-content/uploads/2010/01/SEUV.crx">Search Engine Updates Viewer</a><span style="font-family: Georgia, 'Times New Roman', 'Bitstream Charter', Times, serif; font-weight: normal; font-size: 13px; line-height: 19px;">&#8220;.</span></strong></p>
<p><strong><span style="font-family: Georgia, 'Times New Roman', 'Bitstream Charter', Times, serif; font-weight: normal; font-size: 13px; line-height: 19px;">P.S. У меня в планах написать проверялку статы на популярных партнёрках, посмотрим, насколько это реально.</span></strong></p>
<p><strong><span style="font-family: Georgia, 'Times New Roman', 'Bitstream Charter', Times, serif; font-weight: normal; font-size: 13px; line-height: 19px;">P.P.S. Если тема народу будет интересна, продолжу цикл статей.</span></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://aboutdoorways.com/post/170/feed</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>Взаимодействите python и php без дополнительных модулей</title>
		<link>http://aboutdoorways.com/post/153</link>
		<comments>http://aboutdoorways.com/post/153#comments</comments>
		<pubDate>Sun, 03 Jan 2010 16:58:26 +0000</pubDate>
		<dc:creator>inlanger</dc:creator>
				<category><![CDATA[Программирование]]></category>

		<guid isPermaLink="false">http://aboutdoorways.com/?p=153</guid>
		<description><![CDATA[
Итак, решил открыть новую серию постов о программировании. Так как часто в процессе работы дорвейщики сталкиваются с совершенно нестандартными задачами, то описание их решения избавит многих от длительных часов перебирания литературы и извращениями над кодом.
Этот пост я хочу написать о самом простом варианте взаимодействия php с python. Довольно часто многие ...]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-158" title="php-python" src="http://aboutdoorways.com/wp-content/uploads/2010/01/php-python1.gif" alt="" width="559" height="152" /></p>
<p>Итак, решил открыть новую серию постов о программировании. Так как часто в процессе работы дорвейщики сталкиваются с совершенно нестандартными задачами, то описание их решения избавит многих от длительных часов перебирания литературы и извращениями над кодом.</p>
<p>Этот пост я хочу написать о самом простом варианте взаимодействия php с python. Довольно часто многие заставляют бедный php выполнять ресурсоёмкие вычисления, задачи, которые по-идее он не должен выполнять. Некоторые даже извращаются с многопоточностью на питон, со всякими мультикурлами и т.д. А можно всё сделать намного проще &#8211; отдать на обработку данные самой системе, а не апачу. У системы нет ограничений на использование ресурсов, да и апач штука сама по себе медлительная. В качестве языка работы с системой я использую python. Он мультиплатформенный, довольно быстрый, и по нему много хорошей документации + большое количество хорошо сделанных классов для облегчения работы. Итак, для того, чтобы показать как это всё работает нам понадобится два файла &#8211; <strong>test.php</strong> и <strong>test.py</strong></p>
<div id="wpshdo_19" class="wp-synhighlighter-outer"><div id="wpshdt_19" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_19"></a><a id="wpshat_19" class="wp-synhighlighter-title" href="#codesyntax_19"  onClick="javascript:wpsh_toggleBlock(19)" title="Click to show/hide code block">test.php</a></td><td align="right"><a href="#codesyntax_19" onClick="javascript:wpsh_code(19)" title="Show code only"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_19" onClick="javascript:wpsh_print(19)" title="Print code"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_19" class="wp-synhighlighter-inner" style="display: block;"><pre class="php" style="font-family:monospace;"><ol><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000000; font-weight: bold;">&lt;?</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000088;">$output</span> <span style="color: #339933;">=</span> <a href="http://www.php.net/passthru"><span style="color: #990000;">passthru</span></a> <span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;python test.py 'http://aboutdoorways.com' 'Link text'&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #b1b100;">echo</span> <span style="color: #000088;">$output</span><span style="color: #339933;">;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000000; font-weight: bold;">?&gt;</span></div></li></ol></pre></div></div>
<div id="wpshdo_20" class="wp-synhighlighter-outer"><div id="wpshdt_20" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_20"></a><a id="wpshat_20" class="wp-synhighlighter-title" href="#codesyntax_20"  onClick="javascript:wpsh_toggleBlock(20)" title="Click to show/hide code block">test.py</a></td><td align="right"><a href="#codesyntax_20" onClick="javascript:wpsh_code(20)" title="Show code only"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_20" onClick="javascript:wpsh_print(20)" title="Print code"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://aboutdoorways.com/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_20" class="wp-synhighlighter-inner" style="display: block;"><pre class="python" style="font-family:monospace;"><ol><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #808080; font-style: italic;">#!/usr/bin/python</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #dc143c;">sys</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">args = <span style="color: #dc143c;">sys</span>.<span style="color: black;">argv</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">link = args<span style="color: black;">&#91;</span>1<span style="color: black;">&#93;</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">linktext = args<span style="color: black;">&#91;</span>2<span style="color: black;">&#93;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #ff7700;font-weight:bold;">print</span> <span style="color: #483d8b;">&quot;&lt;a href='&quot;</span>+link+<span style="color: #483d8b;">&quot;'&gt;&quot;</span>+linktext+<span style="color: #483d8b;">&quot;&lt;/a&gt;&quot;</span></div></li></ol></pre></div></div>
<p>Как видно из кода &#8211; мы просто вызываем системную команду, и передаём ей несколько параметров, а скрипт эти параметры обрабатывает и выводит ссылку(для примера). Как-нибудь позже я покажу как работать со связкой Ajax + PHP + Python, когда придумаю какой-нибудь более-менее интересный пример. PHP функция passthru выполняет системную команду и возвращает полый её вывод. Python функция sys.argv принимает все параметры, переданные скрипту в командной строке, и возвращает их в скрипте в виде массива. Нулевой элемент &#8211; имя скрипта, которому были переданы параметры, поэтому в программе мы начали работать с элемента под номером 1.</p>
<p>Нашёл в интернете <a href="http://alblog.org.ru/funnybook/">компилятор электронных книг</a>, нужна штука иногда!</p>
]]></content:encoded>
			<wfw:commentRss>http://aboutdoorways.com/post/153/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
<!-- This Quick Cache file was built for (  aboutdoorways.com/post/category/%d0%bf%d1%80%d0%be%d0%b3%d1%80%d0%b0%d0%bc%d0%bc%d0%b8%d1%80%d0%be%d0%b2%d0%b0%d0%bd%d0%b8%d0%b5/feed ) in 0.50693 seconds, on Feb 4th, 2012 at 11:51 am UTC. -->
<!-- This Quick Cache file will automatically expire ( and be re-built automatically ) on Feb 4th, 2012 at 12:51 pm UTC -->
