← All posts tagged Python

hot-gay

Если кому-то интересно, то вот моя грепалка арабов. Из депенденсов только lxml, в качестве аргумента указывается число страниц на которых производится поиск.

#!/usr/bin/python
import sys
import lxml.html

def getMessages(page):
    juick = lxml.html.parse("http://juick.com/?page=%d" % page).getroot()
    messages = juick.xpath("//div[@class='msg']")
    for message in messages:
        nick = "".join(message.xpath(".//big//a[1]/text()"))
        text = " ".join(message.xpath(".//div[@class='msgtxt']//text()"))
        n = "".join(message.xpath(".//div[@class='msgnum']//text()"))
        yield (nick, text, n)

def check(message):
    return (set(message) & set(map(unichr, xrange(0x600, 0x6ff + 1))))

def findPigs(pages):
    pigs = []
    for page in xrange(1, pages + 1):
        for message in getMessages(page):
            if check(message[1]):
                if pigs.count(message[0]) == 0:
                    pigs.append(message[0])
                    print message[0]

if __name__ == "__main__":
	findPigs(int(sys.argv[1]))