2019. 9. 17.

[python] 위키백과 정찰

 # 위키백과 최초 페이지에서 랜덤으로 링크페이지에 접속하여 링크가 없을때까지 반복하는 프로그램
from urllib.request import urlopen
from bs4 import BeautifulSoup
import re
import random
import datetime
random.seed(datetime.datetime.now())



def linkaddr(addr) :
listing = []
html = urlopen("http://en.wikipedia.org"+addr)

bsObj = BeautifulSoup(html.read(), "html.parser")

for link in bsObj.find("div", {"id":"bodyContent"}).findAll("a",href=re.compile("^(/wiki/)((?!:).)*$")) :
if 'href' in link.attrs :
listing.append(link.attrs['href'])
return listing

links = []
links = linkaddr("/wiki/kevin_Bacon")
while len(links) > 0 :
a = links[random.randint(0, len(links)-1)]
print(a)
linkaddr(a)

Popular Posts

Recent Posts

Powered by Blogger.