爬蟲爬取韓國美女主播直播小視頻
應某哥們的要求,爬取了某網站的小視頻,具體什么網址,這里就不多說了,老司機會找到的,這里主要說技術。獲得網頁,和視頻下載地址和上一篇博客差不多,這里也就直接上代碼吧。最后說一句:學習技術才是關鍵,一定要注意身體,,嗯,對,是是,我說的別熬夜寫代碼,哈哈哈,。
# encoding: utf-8
import sys
import requests
import re
import time
import os
from bs4 import BeautifulSoup
count=4;
urlHead = 'http://www.bjmingding.com/post/'
urlFoot = '.html'
def SaveMovie(link, image_name): # 獲取網址
try:
time1 = time.time()
# 沒有這行,打印的結果中文是亂碼
#link = 'http://puliting.dgzcad.com/puliting/1553829923537.mp4'
dest_resp = requests.get(link)
# 視頻是二進制數據流,content就是為了獲取二進制數據的方法
data = dest_resp.content
# 保存數據的路徑及文件名
root = 'D:/pic/movie/'
path = root + image_name+str(count)+'.mp4'
if not os.path.exists(root):
os.mkdir(root)
f = open(path, 'wb')
f.write(data)
f.close()
time2 = time.time()
print('ok,下載完成!')
print('總共耗時:' + str(time2 - time1) + 's')
except:
return ""
def getHtmlurl(url): # 獲取網址
try:
r = requests.get(url)
r.raise_for_status()
r.encoding = r.apparent_encoding
return r.text
except:
return ""
def getMovieLink(html):
soup=BeautifulSoup(html)
aaa=soup.find('ul',class_='row')
All_MovieLinks=soup.select('body script')
i=1
lll=' '
for MovieLink in All_MovieLinks:
str = MovieLink.get_text()
print(MovieLink)
if i==2:
s = str.find('url: ')
t = str.find('pic')
lll=str[s+6:t].split('\'')[0]
print(lll)
break
i += 1
reg = r'<h1 class="f-22 txt-ov">(.*)</h1>' # r'<a\sclass=".*?"\starget=".*?"\shref=".*?">(.*)</a>' # 正則表達式
reg_ques = re.compile(reg) # 編譯一下正則表達式,運行的更快
image_name_arr = reg_ques.findall(html) # 匹配正則表達式
image_name = image_name_arr[0]
SaveMovie(lll, image_name)
def main(url):
#url='http://www.ivsky.com/bizhi/yourname_v39947/'
html=(getHtmlurl(url))
#print(html)
return getMovieLink(html)
if __name__ == '__main__':
for i in range(1,100):
count +=1
url=urlHead+str(6765+count)+urlFoot
try:
main(url)
except:
pass
簡單看一下運行結果,這不是成品,只是簡單獲取一些,想要獲取更多,自行更改相應代碼,或者更改網址。這里只是技術交流,如果大神看到該代碼請不要噴基本變量什么的,這只是隨手一寫,只是為了增加朋友之間的友誼,如果有更好的技術,請更正,謝謝。

下一篇應該是自動下載抖音里的無水印視頻等信息。
微信:GD5626633
