爬取簡書漫畫專欄網頁的文章圖片、文章作者、文章創(chuàng)建的時間、文章的內容
代碼:(Python 3)
如果是Python 3
就不要使用
import sys
reload(sys)
sys.setdefaultencoding("utf-8")
改為
import importlib
importlib.reload(sys)
#!/bin/python
# coding: utf-8
import importlib
importlib.reload(sys)
from bs4 import BeautifulSoup
import requests
html_doc = """
<div>
<a class="blue-link" target="_blank" href="/u/d36ea793dd5e">庚桑</a>
<span class="time" data-shared-at="2017-08-27T16:48:36+08:00"></span>
</div>
</div>
<a class="title" target="_blank" href="/p/afab067940e1">你聽。</a>
<p class="abstract">
生活需要多一點點小溫馨的慰籍。 憶似故人曲 如果說已經不知道要怎么用談話來表達自己,那麼一頭栽進畫畫中就可以讓我暢所欲言 。 構思一個形象,配上一段文字,她就成了它們。而它...
</p>
<div class="meta">
<a target="_blank" href="/p/afab067940e1">
<i class="iconfont ic-list-read"></i> 4
</a> <a target="_blank" href="/p/afab067940e1#comments">
<i class="iconfont ic-list-comments"></i> 0
</a> <span><i class="iconfont ic-list-like"></i> 1</span>
</div>
</div>
</li>
<li id="note-16330011" data-note-id="16330011" class="have-img">
<a class="wrap-img" href="/p/6b7eaab896c5" target="_blank">

</a>
<div class="content">
<div class="author">
<a class="avatar" target="_blank" href="/u/e48ead073ebb">

</a> <div class="name">
<a class="blue-link" target="_blank" href="/u/e48ead073ebb">若水國畫</a>
<span class="time" data-shared-at="2017-08-27T17:16:45+08:00"></span>
</div>
</div>
<a class="title" target="_blank" href="/p/6b7eaab896c5">學國畫手記:第55篇《疏枝喚雨》</a>
<p class="abstract">
臨摹宋徽宗《寫生珍禽圖》之《疏枝喚雨》珠頸斑鳩。 斑鳩寓意長長久久。明天是農歷的七月初七,也是我們中國的傳統節(jié)日七夕節(jié)。提前祝天下有情人七夕情人節(jié)快樂!愿所有的愛情都能像陽光...
</p>
<div class="meta">
<a target="_blank" href="/p/6b7eaab896c5">
<i class="iconfont ic-list-read"></i> 7
</a> <a target="_blank" href="/p/6b7eaab896c5#comments">
<i class="iconfont ic-list-comments"></i> 0
</a> <span><i class="iconfont ic-list-like"></i> 3</span>
</div>
</div>
</li>
"""
soup = BeautifulSoup(html_doc, 'html.parser')
# 如果沒有上面那句,就會提示soup未定義
#soup = soup.find_all('a',class_="blue-link")
# 查找所有有關的節(jié)點
tags = soup.find_all('div', class_="content")
# r同樣,如果沒有上面那句,就會提示tags未定義
for tag in tags:
image = tag.img['src']#獲取圖片
article_user = tag.div.a['href']#獲取作者
created_time = tag.div.span['data-shared-at']#獲取時間
article_url = tag.p.get_text()
tag_span = tag.div.div.find_all('span')
likes = tag_span[0].get_text(strip=True) #此處不明白
# 可以在查找的 tag 下繼續(xù)使用 find_all()
print (tag)
print (article_url)
print (created_time)
print (image)
【注意:
created_time = tag.div.span['data-shared-at']中的[]的內容是標簽的屬性,不是標簽屬性的內容,也不是class或id設置的名字
】
運行效果:
1、
2、
3、
4、在瀏覽器中輸入上圖中獲取的圖片的url
可以看到