# 개인은 원래 있으며, 소스를 표시하시기 바랍니다 : https://www.cnblogs.com/HugJun/p/11506270.html
수입 요청, 시간, 다시는, pprint 에서 fontTools.ttLib의 수입 TTFont 에서 IO가 가져 BytesIO 데프 get_Font가 (URL) : RESP = requests.get (URL) 글꼴 = TTFont (BytesIO (resp.content)) web_font_relation = font.getBestCmap () font.close () 반환 web_font_relation는 데프 (URL)를 get_html_info : 헤더 = { ' 사용자 에이전트 ' : '사용자 에이전트 : 모질라 / 5.0 (윈도우 NT 6.1) AppleWebKit / 537.36 (게코 같은 KHTML) 크롬 / 63.0.3239.132 사파리 / 537.36 ' } html_data = requests.get (URL, 헤더 = 헤더) url_ttf_pattern = re.compile ( ' <스타일> (. *?) \ s에 * </ 스타일> ' , re.S) fonturl = re.findall (url_ttf_pattern, html_data.text) [0] url_ttf = re.search ( ' WOFF. *? URL. * ?.? \ '(.? +) \'* 트루 ' , fonturl) .group (1 ) 인쇄 (url_ttf) 반환 url_ttf, html_data.text 데프 get_encode_font (데이터, web_font_relation) : """ 암호화 CSS 문자 원래 도면 대체 PARAM 데이터 : 배경 자료 : 복귀 : "" " python_font_relation = { ' 하나 ' :. 1 , " TWO ' : 2 , ' 세 ' :. 3 , ' 포 ' :. 4 , ' 다섯 ' :. (5) , ' 여섯 ' :. 6 , ' 세븐 ' :. 7 , ' 여덟 ' :. (8) , '아홉' : 9 , ' 제로 ' 0, ' 기간 ' : ' . ' } 에 대한 K, V 의 web_font_relation.items () : 만약 STR (K) 에서의 데이터 : 잉크 (K, V) fon_css = ' & # ' + STR (K) + ' ; " 데이터 = 의 re.sub (fon_css, STR (python_font_relation [V]), 데이터) TOTAL_NUM = INT (플로트 ( '' .join (re.findall ( '<스팬 클래스 = ". +" >. (+) </ SPAN> </ 안에> <인용> 단어 ' , 데이터))) * 10000) # 단어의 총 수 total_recommend = INT를 (플로트 ( ' ' .join (재. findall은 ( ' <스팬 클래스 =. "+">. (+) </ SPAN> </ EM> 만 총 추천 <안녕히 인용> ' )) * 10000), 데이터) # 총 추천 week_recommend = INT (a 플로트 ( ''을 .join합니다 (re.findall ( ' <= 스팬 클래스입니다. "+"> (. +) </ SPAN> </ EM> 주 추천 <안녕히가 인용>가 ' , 데이터))) * 10000) #의 주 권장 인쇄 (TOTAL_NUM, total_recommend, week_recommend) DEF 주 (URL) : fan_info,데이터 = get_html_info (URL) web_font_relation =get_Font가 (fan_info) get_encode_font (데이터 web_font_relation) "" " 기본 항목 " "" IF __name__ == ' __main__ ' : URL은 = ' https://book.qidian.com/info/1115277 ' # 1 신규 선택 주를 (URL)