最近看了美國往事這部電影。於是就想到最近剛學的爬蟲,就像試試把時光網影評爬取下來,並按照影評的名字存放在本地資料夾。
在長影評頁面可以看到每篇文章的標題對應都有乙個blogid,並且這個id對應該影評正文頁的字尾
那麼我們便可以通過這個id來實現獲取當前頁所有影評的位址
首先定義乙個方法
id = #儲存電影id
text = #儲存文字
name = ''#儲存文章名字
def geturl(url):
response = requests.get(ur)
html = response.text
soup = beautifulsoup(html, 'html.parser')
main = soup.find_all(class_ = 'db_comtool')#找到所有標籤為db_comtool的div裡面內容
for i in main:
這個時候我們就得到了當前頁所有的id
然後開啟任意一篇文章檢視源**分析可以得出正文文字所在的標籤在乙個class為db_mediacont db_commentcont的div裡面文章的標題在乙個class為px38 mt30 c_000的標籤中
def getarticle(url):
global text
response = requests.get(url)#訪問**
html = response.text#儲存**源**
bf = beautifulsoup(html,'html.parser')#解析**
a1 = bf.find_all(class_='db_mediacont db_commentcont')#獲取正文文字
a2 = bf.find_all(class_='px38 mt30 c_000')#獲取文章標題
for each in a1:
for each in a2:
name = (re.sub('[\t\n]', "", re.sub(r']+>', "", str(each))))
f = open('時光網影評/%s.txt'%name, 'w') # 首先先建立乙個檔案物件,開啟方式為w,名字為剛才得到的name
for each in text:
f.writelines(each.encode("gbk", 'ignore').decode("gbk", "ignore")) # 用readlines()方法寫入檔案
text = #清空text
然後將**放入函式中開啟
for i in range(1,15):
ur = ''.format(i)#自動翻頁
geturl(ur)
for i in id:
url = ''.format(i)#自動訪問每篇影評的對應位址
最後可以看到已經成功的將影評儲存在本地了。
python爬蟲之scrapy爬取豆瓣電影(練習)
開發環境 windows pycharm mongodb scrapy 任務目標 任務目標 爬取 豆瓣電影top250 將資料儲存到mongodb中。items.py檔案 coding utf 8 define here the models for your scraped items see d...
回顧Xpath(爬取時光網電影TOP100)
import requests from lxml import etree 爬取時光電影網top100 headers def get information html infos html.xpath id asyncratingregion li 找到迴圈節點 for info in info...
Python爬蟲之爬取動漫之家
python爬蟲之爬取動漫之家 小白上手爬蟲第一天,簡單爬取 動漫之家。小小目標 1.爬取5頁的動漫 2.以list返回其動漫位址和動漫名字 簡單粗暴,直接附上原始碼 import requests import re 獲取頁面 defgethtmltext url try kv r request...