douyin_parse
douyin_parse copied to clipboard
不能用了
项目不能用了
我看了一下,只是id、content呗抖音改了,你看一下新的xpath,或者手动命名就ok了
用不了,更新一下
报错内容:
PS C:\Users\NekokeCore\Downloads\新建文件夹 (2)\douyin_parse> & C:/Users/NekokeCore/AppData/Local/Programs/Python/Python38/python.exe "c:/Users/NekokeCore/Downloads/新建文件夹 (2)/douyin_parse/douyin_parse.py" Traceback (most recent call last): File "c:/Users/NekokeCore/Downloads/新建文件夹 (2)/douyin_parse/douyin_parse.py", line 117, in <lambda> download_button.clicked.connect(lambda: download_click()) File "c:/Users/NekokeCore/Downloads/新建文件夹 (2)/douyin_parse/douyin_parse.py", line 99, in download_click name, _url = parse_shareLink(share_link) File "c:/Users/NekokeCore/Downloads/新建文件夹 (2)/douyin_parse/douyin_parse.py", line 64, in parse_shareLink id = et.xpath( IndexError: list index out of range PS C:\Users\NekokeCore\Downloads\新建文件夹 (2)\douyin_parse>
刚写的,送你了
#NekokeCore ___2020/05/21
import json
import requests as rq
def download(url):
try:
i = rq.get(
f"http://2w7w.cn/douyin/ajax.php?act=dy&url={url}")
html = i.text
js = json.loads(html)
u=rq.get(js['url'])
file=js['name']+'.mp4'
print(js['msg']+'解析成功,正在下载')
open(file,'a')
with open(file, "wb") as f:
f.write(u.content)
print(f'文件{file}下载完成')
except Exception as e:
print(f'脚本可能已过时,或者链接输入有误:url_{url};e_{e}')
download('https://v.douyin.com/J1RJ5jU/')
php版(别人的):
<?php
error_reporting(0);
$act=isset($_GET['act'])?$_GET['act']:null;
$url=isset($_GET['url'])?$_GET['url']:null;
switch($act){
case 'dy':
$reurl = substr($url,strpos($url,"http"));
if(strpos($reurl," ")>0){
$reurl = substr($reurl,0,strpos($reurl," "));
}
ini_set('user_agent','user-agent: Mozilla/5.0 (iPhone; CPU iPhone OS 5_0 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9A334 Safari/7534.48.3');
$url = file_get_contents($reurl);
preg_match('/itemId:\s+\"(.*?)\"/sS',$url,$itemId);
preg_match('/dytk:\s+\"(.*?)\"/sS',$url,$dytk);
$json = file_get_contents('https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids='.$itemId[1].'&dytk='.$dytk[1]);
$res = json_decode($json,true);
$name = $res['item_list'][0]['desc'];//名称
$img = $res['item_list'][0]['video']['origin_cover']['url_list'][0];//图
$img_run = $res['item_list'][0]['video']['dynamic_cover']['url_list'][0];//缩略视频
$zan = $res['item_list'][0]['statistics']['digg_count']; //点赞
$pl = $res['item_list'][0]['statistics']['comment_count']; //评论
$url = $res['item_list'][0]['video']['play_addr']['url_list'][0];
$video = getrealurl(str_replace("playwm","play",$url));
if(!empty($url)){
echo '{"code":1,"msg":"解析成功","name":"'.$name.'","url":"'.$video.'","img":"'.$img.'","img_run":"'.$img_run.'","zan":"'.$zan.'","pl":"'.$pl.'"}';
}else{
echo '{"code":-1,"msg":"未知错误"}';
}
break;
default:
exit('{"code":0,"msg":"No Act"}');
break;
}
function getrealurl($url){
$header = get_headers($url,1);
return $header['location'];
}
?>
你这两段代码还是调用的第三方接口啊:http://2w7w.cn/douyin/ajax.php
------------------ 原始邮件 ------------------ 发件人: "钟小白Core"<[email protected]>; 发送时间: 2020年5月21日(星期四) 中午1:56 收件人: "DLWangSan/douyin_parse"<[email protected]>; 抄送: "✎﹏不可预见"<[email protected]>; "Comment"<[email protected]>; 主题: Re: [DLWangSan/douyin_parse] 不能用了 (#1)
刚写的,送你了
#NekokeCore _2020/05/21 import json import requests as rq def download(url): try: i = rq.get( f"http://2w7w.cn/douyin/ajax.php?act=dy&url={url}") html = i.text js = json.loads(html) u=rq.get(js['url']) file=js['name']+'.mp4' print(js['msg']+'解析成功,正在下载') open(file,'a') with open(file, "wb") as f: f.write(u.content) print(f'文件{file}下载完成') except Exception as e: print(f'脚本可能已过时,或者链接输入有误:url{url};e{e}') download('https://v.douyin.com/J1RJ5jU/')
php版(别人的):