Oft braucht man für eine kleine WWW-Aktion ganz viele Proxies (klar, zum Parallelisieren). Es gibt dazu auch russische Seiten, die Listen von öffentlichen Proxies anbieten. Die muss man aber noch von Hand nach korrekter Funktionsweise überprüfen. Dazu kann man ein kleines Shellscript benutzen, was zwar fork()t wie sau, aber eigentlich ganz gut einzusetzen ist:
#!/bin/sh
PROXIES=""
PROXYCOUNT=0
TESTURL=http://images.slashdot.org/pix.gif
TXT=`wget -q -O- "$TESTURL"`
CKSUM=`echo $TXT | cksum`
while read i; do
PROXY=`echo "$i" | sed -e 's/^[0-9]* *//g'`
PROXY="http://$PROXY/"
PROXIES="${PROXIES} $PROXY"
PROXYCOUNT=$(( PROXYCOUNT + 1 ))
done
if [ $PROXYCOUNT -eq 0 ]; then
echo "Please give a list of proxies on stdin"
exit 1
fi
for proxy in $PROXIES; do
(TXT=`http_proxy="$proxy" wget --timeout=10 -q -O- "$TESTURL"`
if [ $? -eq 0 ]; then
CKSUM2=`echo $TXT | cksum`
if [ "$CKSUM2" = "$CKSUM" ]; then
echo $proxy
fi
fi) &
done
wait
Dann einfach die Proxyliste von der obengenannten Seite kopieren, und in das Skript füttern über stdin. Rauskommt eine korrekt formattierte Liste von funktionnierenden Proxies. Wie immer gilt: Careful with that axe, Eugene!