Guest User

Untitled

a guest
Apr 13th, 2016
191
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.31 KB | None | 0 0
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3.  
  4. import random
  5. import time
  6. import urllib2
  7. import random
  8. import sys
  9. import os
  10. import spynner
  11. from subprocess import Popen, PIPE
  12.  
  13. path = os.path.realpath(os.path.dirname(sys.argv[0]))
  14. useragent = ["Mozilla/5.0 (Windows NT 6.1; rv:7.0.1) Gecko/20100101 Firefox/7.0.1", "Mozilla/5.0 (Windows NT 6.1; rv:7.0.1) Gecko/20100101 Firefox/7.0.1"]
  15.  
  16. class wiper():
  17. def __init__(self, dispute, bmplimit):
  18. #определяем чой-то такое
  19. if '2ch' in dispute:
  20. textform1 = 'span[id=TopNormalReplyLabel]'
  21. textform2 = 'textarea[name=comment]'
  22. textform3 = 'input[name=submit]'
  23. bmptext = '<span class="posttime">'
  24. elif 'syn-ch' in dispute:
  25. textform1 = 'div[id=markup]' #не нужно, но придется
  26. textform2 = 'textarea[name=body]'
  27. textform3 = 'input[name=post]'
  28. bmptext = '<time datetime="'
  29. else:
  30. print ('Неудача! Вы запостили неправильную ссылку.')
  31.  
  32. #определяем бамплимит и постим только по достижению бамплимита
  33. bamp = self.wiper(dispute, textform1, textform2, textform3, bmptext, bmplimit)
  34. while bamp:
  35. randomtime = random.randint(40, 60)
  36. print ('Всё еще не бамплимит, вайп продолжится через '+str(randomtime)+'с.')
  37. time.sleep(randomtime)
  38. bamp = self.wiper(dispute, textform1, textform2, textform3, bmptext, bmplimit)
  39. print 'Бамплимит наступил. Поздравляем, вайпер!'
  40.  
  41. def images_filter(self, operation, url):
  42. return os.path.splitext(url)[1] not in (".jpg", ".png", ".gif", '.webm', '.mp3', '.ttf', '.css', '.flv') #синчеры мпз сочиняют и постят на сайт
  43.  
  44. def wiper(self, dispute, t1, t2, t3, bmptext, bmplimit):
  45. try:
  46. words = u'Нужны тестеры вайполки 1,4 http://pastebin.com/AbJ4HyTk Почему-то заработало, а я не знаю почему.'
  47. rua = useragent[random.randint(0, (int(len(useragent))-1))]
  48. browser = spynner.Browser(debug_level=spynner.ERROR,user_agent = rua)
  49. browser.set_url_filter(self.images_filter)
  50. #browser.create_webview()
  51. #browser.webview.show()
  52. browser.load(dispute, load_timeout=60)
  53. browser.wait(1)
  54. html = browser.html
  55. browser.wait(1)
  56. browser.wk_click(t1)
  57. browser.wait(1)
  58. browser.wk_fill(t2, words)
  59. browser.wait(1) #активируйте чтобы постить
  60. browser.wk_click(t3) #активируйте чтобы постить
  61. browser.wait(3)
  62. browser.close()
  63. #проверям бамплимит
  64. lastpost = html.split(bmptext)
  65. print '3'
  66. lastpostnum = int(len(lastpost))-1
  67. print 'Постов в треде:', lastpostnum
  68. if bmplimit > lastpostnum:
  69. return True
  70. elif bmplimit <= lastpostnum:
  71. return False
  72. except Exception, e:
  73. print 'Ошибочка:', e
  74. return False
  75.  
  76. if __name__ == '__main__':
  77. dispute = 'https://2ch.hk/asylum/res/664787.html'
  78. bmplimit = 400
  79. #print 'Введите ссылку на тред:'
  80. #dispute = raw_input()
  81. #print 'Введите бамплимит'
  82. #bmplimit = raw_input()
  83. #print 'Начинаем вайпать... Ожидайте...'
  84. wiper(dispute,bmplimit)
Advertisement
Add Comment
Please, Sign In to add comment