07 뜨거운 단어 블로그 뉴스 콘텐츠 추천 파크를 크롤링하는 첫 번째 단계의 분야 분석 및 해석에 정보를 분류

기능 요구 사항 : 1, 데이터 수집, 주기적으로 네트워크에서 정보 관련 뜨거운 단어의 필드를 크롤링

      2 데이터 정제 : 열 워드 정보 데이터 클렌징, 자동 분류 및 계수 열 자동 생성 워드 디렉토리 정보 필드를 생성한다.

      3, 뜨거운 단어 설명하기 : 자동 (바이두 백과 사전이나 위키 백과 참조) 각 뜨거운 단어를 명사에 대한 중국의 설명을 추가

      4, 뜨거운 단어 견적 : 뜨거운 단어와 참조를 하이퍼 링크 디렉토리를 생성하는 표시 최근 뉴스 기사 나에 액세스하기 위해 클릭 할 수있는 사용자;

      도 5는 데이터 시각화 보여준다 ① 문자 또는 단어 그래프 열에 시각화 프로그램 구름, ② 관계도의 근사와 뜨거운 단어를 식별한다.
      6, 데이터보고 : 모든 뜨거운 단어 디렉토리가 될 수 있으며, 용어 수출의 형태로 보고서의 WORD 버전을 생성합니다.

공원 크롤링 일부 기능의 완성의 첫 번째 단계는, 뉴스 텍스트로 제목과 내용을 블로그 추천

      

 

 아이디어 : 관찰 그 페이지와 페이지 사이의 법률

 

 페이지를 변경하여 페이지의 링크를 변경합니다. 또한 발견

 

 주소의 해당 뉴스 세부 사항의 그림입니다 HREF 웹 링크

 

 따라서 해당 문서의 특정 주소에 대한 HREF 링크를 크롤링 재활용. 특정 코드는 다음과

가져 오기 요청 
LXML 수입 etree의에서 
가져 오기 시간 
가져 오기 pymysql 
날짜 가져 
오기 URLLIB의 
JSON 가져 오기 


: 데프 getDetail (HREF, 제목) 
    #print (HREF) 
    인쇄 (제목) 
    {= 머리
        '쿠키': '_ 조지아 = GA1.2.617656226.1563849568; __gads = ID = c19014f666d039b5 : T = 1,563,849,576 : S = ALNI_MZBAhutXhG60zo7dVhXyhwkfl_XzQ; UM_distinctid = 16cacb45b0c180-0745b471080efa-7373e61-144000-16cacb45b0d6de; __utmz = 226521935.1571044157.1.1.utmcsr 바이 = | utmccn = (유기) | utmcmd 유기 =; __utma = 226521935.617656226.1563849568.1571044157.1571044156.1 단계; SyntaxHighlighter = 파이썬; .Cnblogs.AspNetCore. 쿠키 = CfDJ8Nf-Z6tqUPlNrwu2nvfTJEgfH-Wr7LrYHIrX6zFY2UqlCesxMAsEz9JpAIbaPlpJgugnPrXvs5KuTOPnzbk1pa_VZIVlfx1x5ufN55Z8sb63ACHlNKd4JMqI93TE2ONBD5KSWd-ryP2Tq1WfI9e_uTiJIIO9vlm54pfLY0fIReGGtqJkQ5E90ahfHtJeDTgM1RHXRieqriLUIXRciu-3QYwk8x5vLZfJIEUMO5g_seeG6G6FW2kbd6Uw3BfRkkIi-g2O_LSlBqj0DdbJFlNmd-TnPmckz5AENnX9f3SPVVhfmg7zINi4G2SSUcYWSvtVqdUtQ8o9vbBKosXoFOTUNH17VXX_IX8V0ODbs8qQfCkPFaDjS8RWSRkW9KDPOmXyqrtHvRXgGRydee52XJ1N8V-Mu0atT0zMwqzblDj2PDahV1R0Y7nBvzIy8uit15vGtR_r0gRFmFSt3ftTkk63zZixWgK7uZ5BsCMZJdhqpMSgLkDETjau0Qe1vqtLvDGOuBZBkznlzmTa-oZ7D6LrDhHJubRpCICUGRb5SB6WcbaxwOqE1um40OSyila-PgwySA; .CNBlogsCookie = 9F86E25644BC936FAE04158D0531CF8F01D604657A302F62BA92F3EB0D7BE317FDE7525EFE154787036095256D48863066CB19BB91ADDA7932BCC3A2B13F6F098FC62FDA781E0FBDC55280B73670A89AE57E1CA5E1269FC05B8FFA0DD6048B0363AF0F08; _GID = GA1.2.1435993629.1581088378; __utmc = 66,375,729 단계; = __utmz 66375729.1581151594.2.2.utmcsr cnblogs.com | utmccn = (추천) | = utmcmd 추천 | utmcct = /; __utma = 66375729.617656226.1563849568.1581151593.1581161200.3 단계; __utmb = 66375729.6.10.1581161200 '
    } 
    URL2 = "https://news.cnblogs.com"+ HREF 
    R2 = requests.get (URL2 헤더 = 헤드) 
    #print (r2.status_code) 
    HTML = r2.content.decode ( "UTF-8") 
    # == 제목이 '病毒,一条静止的河流' 
        #print (HTML) 
    HTML1 = etree.HTML (HTML) 
    #print (HTML1) 
    콘텐츠 1 html1.xpath = ( '// DIV [ID = @ "news_body"] ) 
    인쇄 (콘텐츠 1) 
    만약 LEN (콘텐츠 1) == 0 : 
        인쇄 ( "异常") 
    그렇지 않으면 : 
        content2 콘텐츠 1 = [0] .xpath ( '. 문자열 ()) 
        #print (content2) 
        함량 = content2.replace (' \ R '' ') .replace ('\ t '' ') .replace ( "\ n' '') .replace ( '' '') 
        인쇄 (내용)
        F = 개방 ( "news.txt"의 "+"= "UTF-8"코딩)// H2 [@ 클래스 = "news_entry"] / A / 텍스트 ()) 
        프린트 (렌 (HREF))
        f.write (제목 + ','+ 콘텐츠 + '\ n') 
        # & EMSP 
경우 __name __ == '__ main__': 
    전 범위 (0100)의 경우 : 
        인쇄 ( "*************** ******************** ") 
        인쇄 (I) 
        페이지 = 나는 + 1 개 
        URL ="https://news.cnblogs.com/n/recommend?page= "+ STR (페이지) 

        R = requests.get (URL) 
        HTML = r.content.decode ("UTF-8 ") 
        인쇄 ("상태 코드 ", r.status_code) 
        HTML1 = etree.HTML (HTML) 
        HREF = html1.xpath ( '// H2 [@ 클래스 = "news_entry"] / A / @ HREF') 
        표제 html1.xpath = ( '// H2 / A / 텍스트 () 클래스 = "news_entry"@]) 
        에 대한 범위 (0,18)
            getDetail (HREF [A], 표제 [A])
       

  

다음과 같은 결과가 크롤링 (표시부, 제목 및 컨텐츠는 공간에 의해 분리 된 데이터의 각 행은 제목 및 내용 크롤링)

 

 

  요약이 : 포켓 가공 과정에서 발생 크롤링, 다음 로그인 화면 페이지로 직접 이동에 너무 많은 지속적인 액세스를 감지, 플러스 헤드 쿠키의 검토 후,이 문제를 해결할 수

 

추천

출처www.cnblogs.com/xcl666/p/12285733.html