Windows 7 玩 Python 爬蟲 use Scrapy
Scrapy 部署至ScrapingHub 上以及錯誤解法
ScrapingHub 的API使用方式
這些都是為了我的每秒一句做的準備,重新整理時,就會產生新的一句話(總數量500筆)
這是scrapingHub的限制,我也沒辦法。
為什麼叫每秒一句?因為每秒重新整理一次就會產生一句話XDDDD
今年的目標,我終於完成了。
自從看到博客來有每日一句後,
就在想為啥不能撈出來一直輪撥。
(看書時,看到喜歡的字句總會抄下來,但沒有紀錄出處..算是一大敗筆)
以下文章開始
邏輯沒啥特別的,就json撈出資料,隨機亂數產生,
看抓到哪個資料就是那個了。
程式參考:
Math.random()取得某區間內的隨機亂數
jsbin測試程式
用javascript取得json檔
<style>
#books_update_widget {
border-radius: 5px;
background-color:#fff;
border:solid #878b90 10px;
-webkit-box-shadow: 0px 0px 4px 1px #595959,
inset 0px 0px 0px 1px #7D730B;
-moz-box-shadow: 0px 0px 4px 1px #595959,
inset 0px 0px 0px 1px #7D730B;
box-shadow: 0px 0px 4px 1px #595959,
inset 0px 0px 0px 1px #7D730B;
padding:15px 10px 35px 15px;
}
#books_update_widget a {
color: #00635d;
}
.books_footer {
margin-bottom:10px;
font-size:7px;
text-align:right;
}
</style>
<div id="books_update_widget">
<p id="quote"></p>
<div>
<p>出處:<span id="source"></span><p>
<p>作者:<span id="author"></span></p>
</p></p></div>
<hr />
<div id="books"footer">From <a href="https://activity.books.com.tw/everylettermatters/sentence/latest" target="_blank" >博客來-每日一句</a> </div>
<div>
<script>
function loadJSON(path, success, error)
{
var xhr = new XMLHttpRequest();
//取得XMLHttpRequest物件,設定非同步傳輸完成函式"onreadystatechange"
xhr.onreadystatechange = function()
{
if (xhr.readyState === 4) {
if (xhr.status === 200) {
if (success)
success(JSON.parse(xhr.responseText));
//讀檔成功時就將檔案內容當成字串,進行JSON解析
} else {
if (error)
error(xhr);
//讀檔失敗時就回傳錯誤訊息
}
}
};
xhr.open("GET", path, true);
// 初始設定
xhr.send();
// 傳輸
}
function getRandom(min,max){
return Math.floor(Math.random()*(max-min+1))+min;
};
loadJSON('https://storage.scrapinghub.com/items/342769/3/17?apikey=579b8b8f14ce4a83bd876d25e253a1e3&format=json',
function(data) {
var rand = getRandom(1,500)
var a = data;
document.getElementById("quote").innerHTML = a[rand].content;
document.getElementById("source").innerHTML = a[rand].source;
document.getElementById("author").innerHTML = a[rand].author;
},
function(xhr) { console.error(xhr); }
);
</script></div></div>
0 意見:
張貼留言