본문 바로가기

Python/Python Basic

크롤링(Crawling)_04 (함수)

예제 #1. 기사 제목 크롤링

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
def title_matcher(tag):
    return tag.name == 'h3'
 
def get_news_title(url):
    res = requests.get(url)
    html = res.text
    soup = BeautifulSoup(html, 'html5lib')
    
    h3 = soup.find(lambda x : x.name == 'h3')
    # h3 = soup.find(title_matcher)
    # h3 = soup.find('h3')
    
    return h3.get_text()
 
print(get_news_title('http://media.daum.net/digital/newsview?newsid=20160929044237479#alex-area'))
 
==========================<<실행결과>>==========================
 
혁신 없다지만.. 아이폰7엔 네 가지가 있었다
cs

 

 

예제 #2. 기사 내용 크롤링

 

<CASE 1>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
def get_news_content(url):
    
    res = requests.get(url)
    content = res.text
    soup = BeautifulSoup(content, "html5lib")
    div = soup.find('div', attrs = {'id' : 'harmonyContainer'})
    
    content = ''
    for paragraph in div.find_all('p'):
        content += paragraph.get_text()
    
    return content
 
print(get_news_content('http://v.media.daum.net/v/20170614214609586'))
 
==========================<<실행결과>>==========================
 
(테헤란=연합뉴스) 강훈상 특파원 = 사우디아라비아 등 주류 수니파 국가 9개국에 단교 조치를 당한 카타르가 아랍권의 군사적 공조에서도 제외되고 있다.
이번 단교 사태가 원만하게 해결되면 카타르군이 다시 참여할 수 있지만 중동·아프리카에서 맺어지는 아랍권의 군사적 협력을 사우디가 주도하는 만큼 현재로선 
카타르의 입지가 없는 탓이다.군사·안보 부문의 공조는 가장 강력한 국가간 연대라는 점에서 카타르에 대한 고립 수위가 한층 높아지는 분위기다.AP통신은 
카타르가 동아프리카 에리트레아와 지부티 국경 산악지대에 배치한 자국 군대 450명을 철수했다고 보도했다. 두 나라는 카타르와 외교 관계 수준을 격하하는 
방식으로 아랍권의 단교에 동참했다.사우디 등 걸프 지역 6개 수니파 군주정의 모임인 걸프협력회의(GCC) 차원의 결정에 따라 카타르는 2010년 양측 무장 조직의 
충돌을 막으려고 이곳에 평화유지군을 파병했다.2015년 예멘 내전에 본격화해 GCC 회원국(오만 제외)이 직접 예멘에 파병하면서 예멘과 가까운 에리트레아와 
지부티는 파병 부대의 전투지역전단(페바)으로 역할했다.5일 사우디 등이 단교를 선언함과 동시에 예멘 내전에 참전한 수니 아랍권 동맹군에서도 1천명 규모의 
카타르군과 기갑부대, 헬리콥터 부대가 빠졌다.카타르는 예멘 내전 개입을 위해 2015년 3월 사우디 주도로 구성된 아랍권 동맹군에 매우 적극적이었다.한 해 전인 
2014년 사우디, UAE, 바레인이 카타르의 무슬림형제단 지원을 구실로 카타르 주재 자국 대사를 소환하는 외교 위기가 그해 말 간신히 봉합됐다.카타르는 외교 갈등 
뒤 이웃 걸프 국가와 남은 앙금을 해소하고 역내 맹주인 사우디의 정책에 협조한다는 점을 과시하려고 군대를 대규모로 동맹군에 합류시켰다.GCC 6개 회원국은 1984년 
'반도의방패군'(PSF)이라는 약 4만명 규모의 느슨한 형태의 연합군을 창설해 유지하고 있다. PSF가 2011년 바레인의 민중 봉기 이후 별다른 활약이 없긴 하지만 
상징적인 조치로 카타르를 제외할 지도 주목된다.또 사이버 범죄와 테러 대처, 마약 밀거래, 돈세탁 등 국경을 넘나드는 범죄에 대응한다며 2015년 GCC 6개 회원국이 
결성한 연합경찰에서도 카타르를 배제할 가능성도 있다.아랍권이 외교, 무역, 통행에 이어 군사 분야 공조에서도 카타르를 소외시키고 있지만 중동 정세에서 카타르의 
군사적 비중은 여전하다.카타르에 중동 최대의 미 공군기지(알우데이드)와 미군 1만명이 주둔하고 있어서다. 알우데이드 기지는 이슬람국가(IS) 공습에 참여하는 
미군 전력의 발진 기지다.조셉 던포드 미 합참의장은 13일 "카타르와 아랍권의 갈등으로 미군의 군사 작전이 영향받지는 않는다"며 "미국은 상황을 매우 예의주시하지만 
미군이 카타르 안팎에서 자유롭게 기동할 수 있도록 모든 당사자와 잘 협력해 왔다"고 말했다.hskang@yna.co.kr
cs

 

<CASE 2>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
import requests
from bs4 import BeautifulSoup
 
def get_news_content(url):
    res = requests.get(url)
    content = res.text
    soup = BeautifulSoup(content, 'html5lib')
    
    div = soup.find('div', attrs = {'id' : 'harmonyContainer'})

 

    # class의 경우 class_ 파라미터 사용하여 바로 검색 가능 

    # div = soup.find('div', class_ = 'article_view')    

 

    content = []
    for paragraph in div.find_all('p'):
        content.append(paragraph.get_text())
    
    return content
 
url = 'http://v.media.daum.net/v/20170614214609586'
for p in get_news_content(url):
    print(p)
 
========================<<실행결과>>========================
 
(테헤란=연합뉴스) 강훈상 특파원 = 사우디아라비아 등 주류 수니파 국가 9개국에 단교 조치를 당한 카타르가 아랍권의 군사적 공조에서도 제외되고 있다.
이번 단교 사태가 원만하게 해결되면 카타르군이 다시 참여할 수 있지만 중동·아프리카에서 맺어지는 아랍권의 군사적 협력을 사우디가 주도하는 만큼 현재로선 카타르의 입지가 없는 탓이다.
군사·안보 부문의 공조는 가장 강력한 국가간 연대라는 점에서 카타르에 대한 고립 수위가 한층 높아지는 분위기다.
AP통신은 카타르가 동아프리카 에리트레아와 지부티 국경 산악지대에 배치한 자국 군대 450명을 철수했다고 보도했다. 두 나라는 카타르와 외교 관계 수준을 격하하는 방식으로 아랍권의 단교에 동참했다.
사우디 등 걸프 지역 6개 수니파 군주정의 모임인 걸프협력회의(GCC) 차원의 결정에 따라 카타르는 2010년 양측 무장 조직의 충돌을 막으려고 이곳에 평화유지군을 파병했다.
2015년 예멘 내전에 본격화해 GCC 회원국(오만 제외)이 직접 예멘에 파병하면서 예멘과 가까운 에리트레아와 지부티는 파병 부대의 전투지역전단(페바)으로 역할했다.
5일 사우디 등이 단교를 선언함과 동시에 예멘 내전에 참전한 수니 아랍권 동맹군에서도 1천명 규모의 카타르군과 기갑부대, 헬리콥터 부대가 빠졌다.
카타르는 예멘 내전 개입을 위해 2015년 3월 사우디 주도로 구성된 아랍권 동맹군에 매우 적극적이었다.
한 해 전인 2014년 사우디, UAE, 바레인이 카타르의 무슬림형제단 지원을 구실로 카타르 주재 자국 대사를 소환하는 외교 위기가 그해 말 간신히 봉합됐다.
카타르는 외교 갈등 뒤 이웃 걸프 국가와 남은 앙금을 해소하고 역내 맹주인 사우디의 정책에 협조한다는 점을 과시하려고 군대를 대규모로 동맹군에 합류시켰다.
GCC 6개 회원국은 1984년 '반도의방패군'(PSF)이라는 약 4만명 규모의 느슨한 형태의 연합군을 창설해 유지하고 있다. 
PSF가 2011년 바레인의 민중 봉기 이후 별다른 활약이 없긴 하지만 상징적인 조치로 카타르를 제외할 지도 주목된다.
또 사이버 범죄와 테러 대처, 마약 밀거래, 돈세탁 등 국경을 넘나드는 범죄에 대응한다며 2015년 GCC 6개 회원국이 결성한 연합경찰에서도 카타르를 배제할 가능성도 있다.
아랍권이 외교, 무역, 통행에 이어 군사 분야 공조에서도 카타르를 소외시키고 있지만 중동 정세에서 카타르의 군사적 비중은 여전하다.
카타르에 중동 최대의 미 공군기지(알우데이드)와 미군 1만명이 주둔하고 있어서다. 알우데이드 기지는 이슬람국가(IS) 공습에 참여하는 미군 전력의 발진 기지다.
조셉 던포드 미 합참의장은 13일 "카타르와 아랍권의 갈등으로 미군의 군사 작전이 영향받지는 않는다"며 "미국은 상황을 매우 예의주시하지만 미군이 카타르 안팎에서 자유롭게 기동할 수 있도록 모든 당사자와 잘 협력해 왔다"고 말했다.
hskang@yna.co.kr
 
 
cs

 

 

<CASE 3>

- find_all에서 속성으로 List를 주면 OR 검색

ex) 'article_view'이거나 'hcg_media_pc_mAside'인거 가져와

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
import requests
from bs4 import BeautifulSoup
 
 
def get_news_content(url):
    
    res = requests.get(url)
    content = res.text
    soup = BeautifulSoup(content, 'html5lib')
    
    # find_all에서 속성으로 리스트를 주면 OR 검색
    # 'article_view' 이거나 'hcg_media_pc_mAside' 인거 가져와
    div = soup.find_all('div', class_ = ['article_view''hcg_media_pc_mAside'])
    
    print(div[0].get_text())
    print(div[1].get_text())
    
print(get_news_content('http://v.media.daum.net/v/20170614214609586'))
 
=====================<<실행결과>>=====================
 
(테헤란=연합뉴스) 강훈상 특파원 = 사우디아라비아 등 주류 수니파 국가 9개국에 단교 조치를 당한 카타르가 아랍권의 군사적 공조에서도 제외되고 있다.
         이번 단교 사태가 원만하게 해결되면 카타르군이 다시 참여할 수 있지만 중동·아프리카에서 맺어지는 아랍권의 군사적 협력을 사우디가 주도하는 만큼 현재로선 카타르의 입지가 없는 탓이다.
         군사·안보 부문의 공조는 가장 강력한 국가간 연대라는 점에서 카타르에 대한 고립 수위가 한층 높아지는 분위기다.
         AP통신은 카타르가 동아프리카 에리트레아와 지부티 국경 산악지대에 배치한 자국 군대 450명을 철수했다고 보도했다. 두 나라는 카타르와 외교 관계 수준을 격하하는 방식으로 아랍권의 단교에 동참했다.
         사우디 등 걸프 지역 6개 수니파 군주정의 모임인 걸프협력회의(GCC) 차원의 결정에 따라 카타르는 2010년 양측 무장 조직의 충돌을 막으려고 이곳에 평화유지군을 파병했다.
         2015년 예멘 내전에 본격화해 GCC 회원국(오만 제외)이 직접 예멘에 파병하면서 예멘과 가까운 에리트레아와 지부티는 파병 부대의 전투지역전단(페바)으로 역할했다.
         5일 사우디 등이 단교를 선언함과 동시에 예멘 내전에 참전한 수니 아랍권 동맹군에서도 1천명 규모의 카타르군과 기갑부대, 헬리콥터 부대가 빠졌다.
         카타르는 예멘 내전 개입을 위해 2015년 3월 사우디 주도로 구성된 아랍권 동맹군에 매우 적극적이었다.
         한 해 전인 2014년 사우디, UAE, 바레인이 카타르의 무슬림형제단 지원을 구실로 카타르 주재 자국 대사를 소환하는 외교 위기가 그해 말 간신히 봉합됐다.
         카타르는 외교 갈등 뒤 이웃 걸프 국가와 남은 앙금을 해소하고 역내 맹주인 사우디의 정책에 협조한다는 점을 과시하려고 군대를 대규모로 동맹군에 합류시켰다.
         GCC 6개 회원국은 1984년 '반도의방패군'(PSF)이라는 약 4만명 규모의 느슨한 형태의 연합군을 창설해 유지하고 있다. 
         PSF가 2011년 바레인의 민중 봉기 이후 별다른 활약이 없긴 하지만 상징적인 조치로 카타르를 제외할 지도 주목된다.
         또 사이버 범죄와 테러 대처, 마약 밀거래, 돈세탁 등 국경을 넘나드는 범죄에 대응한다며 2015년 GCC 6개 회원국이 결성한 연합경찰에서도 카타르를 배제할 가능성도 있다.
         아랍권이 외교, 무역, 통행에 이어 군사 분야 공조에서도 카타르를 소외시키고 있지만 중동 정세에서 카타르의 군사적 비중은 여전하다.
         카타르에 중동 최대의 미 공군기지(알우데이드)와 미군 1만명이 주둔하고 있어서다. 알우데이드 기지는 이슬람국가(IS) 공습에 참여하는 미군 전력의 발진 기지다.
         조셉 던포드 미 합참의장은 13일 "카타르와 아랍권의 갈등으로 미군의 군사 작전이 영향받지는 않는다"며 "미국은 상황을 매우 예의주시하지만 미군이 카타르 안팎에서 자유롭게 기동할 수 있도록 모든 당사자와 잘 협력해 왔다"고 말했다.
         hskang@yna.co.kr
         
          
         
         
       
 
       
      
       
        많이본 뉴스
        
         뉴스
          
           뉴스
           
            1위어버이연합·엄마부대, 정권교체 뒤 집회 개최 전무
            2위"여왕 살인개미 잡아라"..오늘 오후 땅파기 착수(종합)
            3위외제차 몰고 렌트비는 업자가 납부..'레인지로버 경찰' 실형
            4위추석 황금연휴에 '양극화'.."대기업 친구보며 자괴감"
            5위친정 차례 없애고, '시댁'은 추석에만.. 나의 명절 대처법
            6위"차라리 차례지냈으면"..시부모와 여행, 며느리들 '울상'
            7위美 최악의 총기참사..왜 이렇게 피해 커졌나
            8위[단독] 말 많았던 외교부 말(馬)그림, 15년만에 떼낸다
            9위"강사님 추석 떡값 왜 걷나요"..김영란법이 바꾼 명절 풍경
            10위(1)81세 '43년차 이장'이 마을 궂은 일..노인이 노인을 돌본다
           
           
            이전
            다음
            전체랭킹
           
          
         연예
         스포츠
        
       
       
       
       포토&TV 
        
         
              포토   고향가는 길   
              영상   <뉴스G> 오늘 식사는 '지구를 생각하는 한 끼'   
         
        
       
       
       실시간 이슈 
        
        전체 
          
          전체 
           
            1위  지방쓰는법   
            2위  김운용   
            3위  박건우   
            4위  알 수도 있는 사람   
            5위  남한산성   
           
           
            6위  박찬종   
            7위  류중일   
            8위  정두언   
            9위  조보아   
            10위  야구순위   
           
           
        뉴스 
          
          뉴스 
           
            1위  라스베가스 총격   
            2위  차례상   
            3위  생체시계   
            4위  서울랜드   
            5위  재래시장   
           
           
            6위  고속도로 요금 면제   
            7위  불개미   
            8위  해방촌   
            9위  층간소음   
            10위  이혼   
           
           
        연예 
          
          연예 
           
            1위  심희섭   
            2위  박지빈   
            3위  이론상 완벽한 남자   
            4위  추자현 시어머니   
            5위  박지헌   
           
           
            6위  이몽   
            7위  홍진영   
            8위  수영   
            9위  골목대장   
            10위  임다연   
           
           
        스포츠 
          
          스포츠 
           
            1위  류중일 감독   
            2위  김운용 별세   
            3위  피케   
            4위  양상문   
            5위  이승엽 은퇴경기   
           
           
            6위  송구홍   
            7위  바톨로 콜론   
            8위  바르셀로나   
            9위  윤필재   
            10위  양현종   
           
           
        
       
       
     
None
cs

 

 

반응형