Salut. Imi era lene sa copiez fiecare post din blog(wordpress) si sa il pun pe ftw.ro, asa ca am facut un script. Scriptul este in Python, si are nevoie de username+password, si un blog ce foloseste wordpress.
Mai jos este scriptul(va trebuie Python, si librariile feedparser, si mechanize)
Ce trebuie sa stiti:Cod:import re,sys,feedparser,time from mechanize import Browser from ClientForm import ParseResponse br = Browser() br.open("http://www.ftw.ro/") print br.title() br.select_form(nr=22) #print br.form form = br.form form['name'] = "username" form['pass'] = "password" br.form = form br.submit() test2 = br.open('http://www.ftw.ro/submit') ###ADDING TO SITE #### link = "http://www.<blog>.ro/" link = link + 'feed/' d = feedparser.parse(link) br.select_form(nr=2) aux = '' print br.form form = br.form for i in range(0,len(d.entries)): #for i in range(0,2): try: form['url'] = d.entries[i].link form['title'] = d.entries[i].title[:20] dest = d.entries[i].description[0:260] + '....' form['body'] = dest form.find_control(name="taxonomy[9]").value = ["18403"] form.find_control(name="taxonomy[1]").value = ["10"] #form['taxonomy[tags][2]'] = 'hacking, testing, google' for j in range(0,len(d.entries[i].tags)): item = d.entries[i].tags[j].term aux = aux + ', ' + item form['taxonomy[tags][2]'] = aux br.form = form print br.form br.submit() print i #time.sleep(3600) except UnicodeEncodeError: print "Eroare unicode" pass
form.find_control(name="taxonomy[9]").value = ["18403"] --> se alege "blog-uri"
form.find_control(name="taxonomy[1]").value = ["10"] --> se alege IT
Pentru a alege un domeniu pentru articol(ce se va inlocui la "taxonomy[1].value) ne uitam in codul sursa a http://ftw.ro/submit si gasim:
<option value="24183">Turism</option><option value="1">Altele</option>
In cazul de fata <option value="10">IT&C</option>(inlocuim aici: (name="taxonomy[1]").value = ["10"] )
P.S: Se trimit pe site ultimele 10 post-uri. Merge doar pentru wordpress!
Succes!
LE: Vreti mai multe explicatii? Nu intelegeti ceva?Post here



Post here
Răspunde cu citat

