def __get_moon(__planet_source): __arguments_for_parsing=[__planet_source,["div","class",re.compile("moon_a")],""] __is_there_moon_in_html = util.parse_using_regexp(__arguments_for_parsing) if "moon" in __is_there_moon_in_html: __moon_status = "1" else: __moon_status = "" return __moon_status
def __get_status(__planet_source, condition): __arguments_for_parsing=[__planet_source,["span","class","status"],""] __status_in_html = util.parse_using_regexp(__arguments_for_parsing) if condition in __status_in_html: status = "1" else: status = "" return status
def get_data_in_mail(mailSource, string): arguments_for_parsing=[mailSource,["span","class",re.compile("msg_content")],"(.*"+string+"|<\/span>.*)|\."] data_in_html = util.parse_using_regexp(arguments_for_parsing) if "compacting" in data_in_html: # 정탐 레벨 낮음 data = "Low_Espionage_Level" else: data = data_in_html return data
def __get_user_rank(__planet_source): __arguments_for_parsing=[__planet_source,["div","id",re.compile("player\d+")],"(.*searchRelId=\d+\">|<\/a><\/li>.*)"] __user_rank_in_html = util.parse_using_regexp(__arguments_for_parsing) if "Support" in __user_rank_in_html: # 관리자 예외 __user_rank = "" elif "sendMail" in __user_rank_in_html: # 밴 당한 사람은 랭크가 없음. __user_rank = "" else: __user_rank = __user_rank_in_html return __user_rank
def __select_fleet(browser, __attack_coordinates): # #ship_203 카대 숫자 입력칸. # #ship_210 정위 숫자 입력칸. WebDriverWait(browser, 20). \ until(EC.presence_of_element_located((By.CSS_SELECTOR,"#sendall"))) __source = browser.page_source __bs_object = BeautifulSoup(__source, "html.parser") __argumentsForParsing = [ __bs_object, ["div", "id", "civilships"], ".*>Espionage Probe <\/span> *|<.*" ] __current_large_cargos = util.parse_using_regexp(__argumentsForParsing) if int(__current_large_cargos) < int(__attack_coordinates[3]): print("1/3 카대 숫자가 부족합니다.") # 없는대로 있는카대 다집어넣기. #elif 카르고 0일때, 없다고 띄우고 return으로 실행 종료하기. else: print("1/3 현재 카대 : " + str(__current_large_cargos) + " / 선택한 카대 : " + str(__attack_coordinates[3]) + "대") print("1/3 카대 숫자 입력중...", end=" ") #입력하기sendkeys print("완료.") # 테스트 부분 print("1/3 테스트케이스로, 정위 1개만 보냅니다.") browser.find_element_by_css_selector("#ship_210").send_keys("1") # 테스트 끝 WebDriverWait(browser, 20). \ until(EC.presence_of_element_located((By.CSS_SELECTOR,"#continue"))) browser.find_element_by_css_selector("#continue").click() __enter_coordinates(browser, __attack_coordinates)
def __get_recyclers_for_debris(__planet_source): __arguments_for_parsing = [ __planet_source, ["li", "class", "debris-recyclers"], ".*Recyclers needed: |</li>" ] return util.parse_using_regexp(__arguments_for_parsing)
def __get_alliance_member(__planet_source): __arguments_for_parsing = [ __planet_source, ["div", "id", re.compile("alliance\d+")], "(.*Member: |</li><li><a href=\"allianceInfo.*)" ] return util.parse_using_regexp(__arguments_for_parsing)
def __get_alliance_rank(__planet_source): __arguments_for_parsing = [ __planet_source, ["div", "id", re.compile("alliance\d+")], "(.*searchRelId=\d+\">|<\/a><\/li>).*" ] return util.parse_using_regexp(__arguments_for_parsing)
def __get_alliance_name(__planet_source): __arguments_for_parsing = [ __planet_source, ["div", "id", re.compile("alliance\d+")], "(.*<h1>|<\/h1>.*)" ] return util.parse_using_regexp(__arguments_for_parsing)
def __get_user_name(__planet_source): __arguments_for_parsing = [ planetsource, ["div", "id", re.compile("player\d+")], ".*: <span>|<\/span>.*" ] return util.parse_using_regexp(__arguments_for_parsing)
def __get_planet_name(__planet_source): __arguments_for_parsing = [ __planet_source, ["div", "id", re.compile("planet\d+")], "(.*textNormal\">|<\/span.*div>)" ] return util.parse_using_regexp(__arguments_for_parsing)
def __get_planet_number(__planet_source): __arguments_for_parsing = [ __planet_source, ["td", "class", "position js_no_action"], "(<td class=\"position js_no_action\">|</td>)" ] return util.parse_using_regexp(__arguments_for_parsing)
def get_planet_name_in_mail(mailSource): arguments_for_parsing = [ mailSource, ["span", "class", "msg_title blue_txt"], "(.*figure>| .*)" ] return util.parse_using_regexp(arguments_for_parsing)
def get_total_page_number(bs_object): arguments_for_parsing = [ bs_object, ["li", "class", "curPage"], "(.*data-tab=\"\d*\">\d*\/|<\/li>.*)" ] return util.parse_using_regexp(arguments_for_parsing)
def get_player_name_in_mail(mailSource): arguments_for_parsing = [ mailSource, ["span", "class", re.compile("status_*")], "(<span.*\">\s+|<\/span>)" ] return util.parse_using_regexp(arguments_for_parsing)
def get_planet_system_in_mail(mailSource): arguments_for_parsing = [ mailSource, ["span", "class", "msg_title blue_txt"], "(.*\[\d+:|:\d+].*)" ] return util.parse_using_regexp(arguments_for_parsing)