Beautiful Soup 모듈 을 사용 하여 나 쁜 백과 의 농담 을 가 져 옵 니 다.
#!/usr/bin/python
#coding: utf-8
from bs4 import BeautifulSoup
import re, sys, urllib, urllib2
reload(sys)
sys.setdefaultencoding( "utf-8" )
while True:
url = "http://www.qiushibaike.com/hot/page/"
try:
x = int(raw_input(u" ( 0 ), 35 :"))
except Exception as e:
print e
print u" "
continue
if x == 0:
break
url = url + str(x) + "/"
headers = {'User-Agent':'Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6'}
try:
html = urllib2.Request(url, headers = headers)
html = urllib2.urlopen(html).read()
html = html.decode("utf-8")
soup = BeautifulSoup(html, "lxml")
items = soup.find_all("div", {"class" : "content"})
sys.stdout.write("
")
sys.stdout.write(u" %d
" % x)
sys.stdout.write("
")
for x, item in zip(range(1, len(items) + 1), items):
sys.stdout.write(u" %d " % x)
sys.stdout.write("
")
sys.stdout.write(item.get_text())
sys.stdout.write("
")
except Exception as e:
print e
print u" , !"
사용 클래스 패키지
#!/usr/bin/python
#coding: utf-8
import re, sys, urllib, urllib2
from bs4 import BeautifulSoup
class Qiushi_spider(object):
def __init__(self, x):
self.x = x
self.url = "http://www.qiushibaike.com/hot/page/" + str(self.x) + "/"
def find_out(self):
try:
headers = {'User-Agent':'Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6'}
html = urllib2.Request(self.url, headers = headers)
html = urllib2.urlopen(html).read()
soup = BeautifulSoup(html, "lxml")
items = soup.find_all("div", {"class", "content"})
sys.stdout.write("
")
sys.stdout.write(u" %d
" % self.x)
sys.stdout.write("
")
for num, item in zip(range(1, len(items) + 1), items):
sys.stdout.write(u" %d " % num)
sys.stdout.write("
")
sys.stdout.write(item.get_text())
sys.stdout.write("
")
except Exception as e:
print e
print u" , "
if __name__ == "__main__":
while True:
try:
x = int(raw_input(u" ( 0 ), 35 :"))
if x == 0:
break
spider = Qiushi_spider(x)
spider.find_out()
except Exception as e:
print e
print u" , "
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.