BeautifulSoup 解析html
# 抓取捧腹网笑话数据
# https://www.pengfu.com/xiaohua_1.html
import urllib
import urllib2
from bs4 import BeautifulSoup
import os
import codecs
import sys
status = True
def remvoeRNT(text):
text1 = text.replace("\t","").replace("\r","").replace("\n","")
return text1
def openFile(title,message):
estabish()
file = codecs.open('/Users/fukai/Desktop/捧腹网数据.txt', 'a','utf-8')
file.write(title + "\n")
file.write(message + "\n")
file.close()
def estabish():
status = os.path.exists('/Users/fukai/Desktop/捧腹网数据.txt')
if status == False:
os.msnod("/Users/fukai/Desktop/捧腹网数据.txt")
index = 0
page = 0
while (status):
response = urllib2.urlopen("https://www.pengfu.com/xiaohua_%d.html" % index)
html = response.read()
soup = BeautifulSoup(html, 'html.parser')
messages = soup.find_all("div",class_="content-img clearfix pt10 relative")
h1s = soup.find_all("h1",class_="dp-b")
tagNum = soup.find("a",class_="page-a page-04")
if tagNum == None:
tagNum = soup.find("span", class_="on")
try:
tagNumText = tagNum.text
print str(index) + " " + tagNumText
page = int(tagNumText)
except:
print tagNum
for num in range(0,len(messages)):
tag = messages[num]
tag1 = h1s[num]
title = remvoeRNT(tag1.text)
message = remvoeRNT(tag.text)
# message = message.replace("\r","")
# message = message.replace("\n","")
openFile(title,message)
if index >= page:
status = False
else:
index = index + 1
print "结束网页解析"
Python实战抓取捧腹网笑话数据
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 关于bs4,官方文档的介绍已经非常详细了,传送:Beautifulsoup 4官方文档,这里我把它组织成自己已经消...
- Correctness AdapterViewChildren Summary: AdapterViews can...
- 弟子奉宝叩首,谨记先师教诲! 静一致远 智与权变 勇以决断 仁以取予 强有所守 礼尚往来 再叩首祈颂 日日精进,修...
- 年初,我嫁给了一个很爱我的老公,如今,在我的家里,是一个奇葩的家,家里发生的一切都是奇葩的事。刚跟老公认识的那会儿...