●40788 2 6/29 hoyunxian R[閒聊] 可以上傳動畫創作在Pixiv
文章代碼(AID)#1Ji0tWt4 (C_Chat) [ptt.cc]
作者: hoyunxian (WildDagger) 看板: C_Chat
標題: Re: [閒聊] 可以上傳動畫創作在Pixiv
時間: Sun Jun 29 21:00:12 2014
※ 引述《n0bp6gjo3 ()》之銘言:
: ※ 引述《qq320 (QQ糖)》之銘言:
: : 推 P2:原來是個zip檔,裡面裝有畫面片段@@ 06/26 07:22
: : 推 qq320:有人知道怎麼抓嗎 都抓不下來 Q_Q 06/26 07:41
: : 推 ian90911:查看原始碼 搜尋zip 找src 複製 把斜線取代 06/26 08:54
: : 其實從天開放新功能後 有不少繪師都開始上傳動畫
: : 但是不管怎麼試都抓不下來
: : 查原始碼找zip的方法也試過 但還是會出現403 Forbidden
: : 想請問有人找到能成功抓圖的方法了嗎?
: : 感恩 Q_Q
: 照上述方法後找到src這段
: 大概是為了防止被抓取造成流量過大
: 所以他們在原始碼裡面加了\
: 正常的網址是 http:// 這樣
: 添加\過後的的是 http:\/\/
: 所以只要把網址內的\移除就可以正常下載了
: 還要自行還原好麻煩啊
其實那不是防止流量過大的問題,而是JavaScript本身的設定
(以下是程式碼解說,沒接觸過的請直接跳最後看結論)
以illust_id=44315162這個「ora ora ora!」來說
其程式碼(寫在<script>......</script>裡面)是這個樣子:
(有些段落太長所以我截斷了)
pixiv.context.illustId = '44315162';
pixiv.context.illustTitle = 'ora ora ora!';
pixiv.context.userId = '3681080';
pixiv.context.userName = 'NueNya';
pixiv.context.hasQuestionnaire = false;
pixiv.context.embedId = '44315162_34d64224341854b8019b057ea6a049ca';
pixiv.context.explicit = false;
pixiv.context.illustSize = [500, 313];
pixiv.context.ugokuIllustData = {
"src":"http:\/\/i1.pixiv.net\/img-zip-ugoira\/
img\/2014\/06\/26\/02\/26\/36\/44315162_ugoira600x600.zip",
"mime_type":"image\/jpeg",
"frames":[
{
"file":"000000.jpg",
"delay":100
},
{
"file":"000001.jpg",
"delay":100
}
]
};
pixiv.context.ugokuIllustFullscreenData = {
"src":"http:\/\/i1.pixiv.net\/img-zip-ugoira\/
img\/2014\/06\/26\/02\/26\/36\/44315162_ugoira1920x1080.zip",
"mime_type":"image\/jpeg",
"frames":[
{
"file":"000000.jpg",
"delay":100
},
{
"file":"000001.jpg",
"delay":100
}
]
};
從這邊可以看的出來其網址是寫在pixiv.context.ugokuIllustData
以及pixiv.context.ugokuIllustFullscreenData這兩個物件裡面的src屬性
由於「/」字元本身在JavaScript裡面是個特殊字元
(「//」在JavaScript代表其後文字都視為註解,
也就是說如果維持「
http://......」的文字不變的話,
程式會把「//」後面的字元都當作是註解,到時程式就會掛掉不能執行)
為了避免程式不能執行,因此當一個網址用字串的方式存進去的時候,
JavaScript會自動把/都加上「\」字元
(「\」字元是JavaScript指定的特殊字元,加在其後面的字元會變回本來的意思,
例如「\/」在JavaScript代表的是「字元/」而不是「特殊符號/」)
所以說,這不是Pixiv在刁難人,
而是因為
如果不這麼寫,Pixiv就會掛掉不能看了
(單純指網頁不能看,不是伺服器不能用)
--
推 galilei503:原PO國文老師經長請假#1Duc8INo (StupidClown) 05/30 02:16
→ leo8064047:樓上的國文老師也...05/30 02:58
推 galilei503: 常...我不該採在地板上,我對不起地球..05/30 03:00
推 leo8064047: 踩05/30 03:15
推 galilei503:樓上你...想害我被做成簽名檔= =(沒有錯字了我撿查過!)05/30 04:56
推 leo8064047: 檢05/30 09:39
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.250.113.164
※ 文章網址: http://www.ptt.cc/bbs/C_Chat/M.1404046816.A.DC4.html
※ 編輯: hoyunxian (111.250.113.164), 06/29/2014 21:00:38
推 zseineo:推 06/29 21:19
推 oread168:跳脫字元 06/29 21:59
正式名稱是這個沒錯,不過總覺得直接用下去好像有人看不懂......
推 humiko1112:Pixiv好像有支援新的動畫程式 06/29 22:16
→ humiko1112:叫えもふり 06/29 22:16
第一次聽到這個......
※ 編輯: hoyunxian (111.250.113.164), 06/29/2014 22:52:00