0
데이터를 긁어 낼 수있는 다음 코드가 있습니다. 데이터가 고쳐지고 있습니다. 그러나 생산량은 거의 엉망입니다.값이없는 경우 공백을 둡니다. BS4 python
from bs4 import BeautifulSoup
import urllib2
import re
import csv
with open('ccccc.csv', 'wb') as f:
writer = csv.writer(f, quoting=csv.QUOTE_ALL)
for i in xrange(1,3):
try:
page = urllib2.urlopen("http://www.codissia.com/member/members-directory/?mode=paging&Keyword=&Type=&pg={}".format(i))
except urllib2.HTTPError:
continue
else:
soup = BeautifulSoup(page.read(), from_encoding=page.info().getparam('charset'))
eachbox = soup.find_all('div', {'class':re.compile(r'members_box[12]')})
for pair in zip(*[iter(eachbox)]*2):
writer.writerow([text.strip() for item in pair for text in item.stripped_strings])
내가 추가 한 이미지에 열이 일치하지 않습니다.
이
내가 데이터가 해당 열에 배치 할<div class="members_box_second">
<div class="members_box0">
<p>1</p>
</div>
<div class="members_box1">
<p class="clear"><b>Name:</b><span>Mr.Jagadhesan.S</span></p>
<p class="clear"><b>Designation:</b><span>Proprietor</span></p>
<p class="clear"><b>CODISSIA - Designation:</b><span>(Founder President, CODISSIA)</span></p>
<p class="clear"><b>Name of the Industry:</b><span>Govardhana Engineering Industries</span></p>
<p class="clear"><b>Specification:</b><span>LIFE</span></p>
<p class="clear"><b>Date of Admission:</b><span>19.12.1969</span></p>
</div>
<div class="members_box2">
<p>Ukkadam South</p>
<p class="clear"><b>Phone:</b><span>2320085, 2320067</span></p>
<p class="clear"><b>Email:</b><span><a href="mailto:[email protected]">[email protected]</a></span></p>
</div>
</div>
<div class="members_box">
<div class="members_box0">
<p>2</p>
</div>
<div class="members_box1">
<p class="clear"><b>Name:</b><span>Mr.Somasundaram.A</span></p>
<p class="clear"><b>Designation:</b><span>Proprietor</span></p>
<p class="clear"><b>Name of the Industry:</b><span>Everest Engineering Works</span></p>
<p class="clear"><b>Specification:</b><span>LIFE</span></p>
<p class="clear"><b>Date of Admission:</b><span>19.12.1969</span></p>
</div>
<div class="members_box2">
<p>Alagar Nivas, 284 NSR Road</p>
<p class="clear"><b>Phone:</b><span>2435674</span></p>
<h4>Factory Address</h4>
Coimbatore - 641 027
<p class="clear"><b>Phone:</b><span>2435674</span></p>
</div>
</div>
스크래핑하고있는 데이터 구조이다. 예를 들어, 모든 이름은 똑같은 열 이름에 있어야합니다 (예 : 현명한 전화 번호와 이메일 등). 전화 번호가 없으면 CSV 파일에 공백이 남습니다. 나는 가까이 있지 않습니다. 그것을 달성하기위한 아이디어를 얻으십시오.
현재 전달 된 값이 비어 있으면 채울 내용은 무엇입니까? – aIKid
다음에 오는 데이터가 그 위치를 채우며, 나는 그것을 원하지 않습니다. –