|
|
- import configparser
- import logging
- import os
- import re
- import time
- import requests
- # 请求headers
- from tx_push import tx_push
- HEADERS = {
- 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) '
- 'Chrome/64.0.3282.140 Safari/537.36 '
- }
- URL = 'https://www.loc.imgfree.eu.org'
- CONFIG = configparser.ConfigParser()
- def get_score(user):
- # 初始化配置
- username = CONFIG.get(user, 'username')
- password = CONFIG.get(user, 'password')
- # 获取Session对象
- session = requests.session()
- session.headers = HEADERS
- try:
- r = session.get('https://www.loc.imgfree.eu.org/forum.php')
- # print(r.text)
- pattern = re.compile(r'toNumbers\("(.+?)"\)')
- result = pattern.findall(r.text)
- # print(result)
- global file_text
- with open('run.source.js', 'r') as f:
- file_text = f.read()
- file_text = file_text.replace('{a}', result[0])
- file_text = file_text.replace('{b}', result[1])
- file_text = file_text.replace('{c}', result[2])
- with open('run.js', 'w') as f:
- f.write(file_text)
- result = os.popen('/usr/local/bin/node run.js')
- ck = result.read().strip()
- session.cookies['L7FW'] = ck
- except:
- pass
-
- # 登录账号
- try:
- data = session.post(
- URL + '/member.php?mod=logging&action=login&loginsubmit=yes&infloat=yes&lssubmit=yes&inajax=1',
- data={'username': username, 'password': password})
- data.raise_for_status()
- except requests.RequestException as e:
- tx_push('%s Login failed : %s' % (user, e))
- logging.error('%s Login failed : %s' % (user, e))
- return
- if data.text.find('window.location.href') == -1:
- tx_push('%s Login failed : %s' % (user, 'Login return information is incorrect'))
- logging.error('%s Login failed : %s' % (user, 'Login return information is incorrect'))
- return
- for i in range(27700, 27710):
- url = URL + '/home.php?mod=space&uid=%s' % i
- try:
- data = session.get(url)
- data.raise_for_status()
- except requests.RequestException as e:
- tx_push('%s : Get page error : %s' % (user, e))
- logging.error('%s : Get page error : %s' % (user, e))
- return
- logging.info('Get %s Success,Continue!' % i)
- def main():
- # 设置日志格式
- logging.basicConfig(level=logging.INFO, format='%(asctime)s %(levelname)-8s: %(message)s')
- # 加载配置
- CONFIG.read('setting.ini')
- # 提示开始运行
- logging.info('=' * 100)
- logging.info('HOSTLOC get score script, @FanHuaCloud copyright'.center(100, ' '))
- logging.info(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())).center(100, ' '))
- logging.info('Script started!'.center(100, ' '))
- logging.info('=' * 100)
- for user in CONFIG.sections():
- get_score(user)
- if __name__ == '__main__':
- main()
复制代码 |
|