鍍金池/ 問(wèn)答/ 數(shù)據(jù)分析&挖掘問(wèn)答
局外人 回答

n = 1、2時(shí)顯然成立

假設(shè)n=m時(shí)成立,則:

$$ 2(\sqrt{m+1} - 1) \le \sum_{k=1}^m \frac{(k-1)!!}{k!!} $$

$$ 2(\sqrt{m} - 1) \le \sum_{k=1}^{m-1} \frac{(k-1)!!}{k!!} $$

$$ 2(\sqrt{m-1} - 1) \le \sum_{k=1}^{m-2} \frac{(k-1)!!}{k!!} $$

當(dāng)n=m+1時(shí):

$$ 左側(cè) = 2(\sqrt{m+2} - 1) $$

$$ 右側(cè) = \sum_{k=1}^{m+1} \frac{(k-1)!!}{k!!} = \sum_{k=1}^m \frac{(k-1)!!}{k!!} + \frac{m!!}{(m+1)!!} $$

因此只要證明下式即可:

$$ \sum_{k=1}^m \frac{(k-1)!!}{k!!} + \frac{m!!}{(m+1)!!} - 2(\sqrt{m+2} - 1) \ge 0 $$

……

接下來(lái)就是想辦法證明這個(gè)不等式。但是把

$$ \sum_{k=1}^m \frac{(k-1)!!}{k!!} $$

直接替換成:

$$ 2(\sqrt{m+1} - 1) $$

不行(我之前就是這么做的),會(huì)導(dǎo)致縮放過(guò)頭。目前還沒(méi)想到證明方法。

另外

$$ \frac{m!!}{(m+1)!!} $$

可以寫(xiě)成

$$ \frac{(m-2)!!}{(m-1)!!} * \frac{m}{m+1} $$

這個(gè)可能可以用在推導(dǎo)過(guò)程中。

array_intersect()

系統(tǒng)有現(xiàn)成的,就不要自己寫(xiě)了

懶豬 回答

response_second = mi_requests.get(url=login_url_second, headers=login_header_first)

何蘇葉 回答

用正則不是太推薦, 建議用標(biāo)準(zhǔn)的urllib庫(kù)來(lái)完成

>>>import urllib
>>>a = urllib.parse.parse_qs(urllib.parse.urlparse("http://abc.com/def?x=2&pn=2").query)
>>>a
{'x': ['2'], 'pn': ['2']}

或者用下面的方式直接獲得dict

>>>a = dict(urllib.parse.parse_qsl(urllib.parse.urlparse("http://abc.com/def?x=2&pn=2").query))
>>>a
{'x': '2', 'pn': '2'}
久舊酒 回答

[自問(wèn)自答] 我后來(lái)發(fā)現(xiàn)了,用chrome dev tool其實(shí)可以看到頁(yè)面本身請(qǐng)求數(shù)據(jù)時(shí)發(fā)送的appid/appkey,不過(guò)不是以這樣的param name呈現(xiàn)出來(lái),所以一開(kāi)始被我忽視了。實(shí)際上只要把這兩個(gè)鍵值對(duì)加進(jìn)header里,并加上chrome里看得到的payload信息,用requests發(fā)送POST請(qǐng)求,就可以直接調(diào)取數(shù)據(jù)庫(kù)信息了。

傲嬌范 回答

500 是服務(wù)器的問(wèn)題,你換個(gè) jq 的 cdn 吧,看起來(lái)像是 jq 的服務(wù)器問(wèn)題

冷咖啡 回答

可以嘗試下這樣:

import requests

try:
    login_res = requests.post(url=login_url, headers=self.headers, data=form_data, proxies=self.proxies,timeout=5).text
except requests.ConnectTimeout:
    #更換你的ip
    login_res = requests.post(url=login_url, headers=self.headers, data=form_data, proxies=self.proxies).text

這樣,在超時(shí)的時(shí)候換1個(gè)ip即可。

尐潴豬 回答

xpath該這么寫(xiě):"http://span[@class='price J-p-5056201']/text()|//span[@class='price J-p-p-5056201']/text()"

尐潴豬 回答

phantomjs 已經(jīng)不推薦使用了,pyspider v0.3.9 已經(jīng)支持 splash ,建議使用 splash 渲染 js。
Enabled by fetch argument --splash-endpoint=http://splash:8050/execute
調(diào)用的時(shí)候使用 fetch_type='splash'

毀了心 回答

一般地址和聯(lián)系電話之類(lèi)的都在一個(gè)div里,你可以臨近信息匹配,應(yīng)該能增加識(shí)別率

荒城 回答

function multi_array_sort($multi_array,$sort_field,$sort_type = SORT_ASC) {

if(empty($multi_array))
    return false;
$arr_field = array();
foreach($multi_array as $row) {
    if(empty($row))
        return false;
    array_push($arr_field,$row[$sort_field]);
}
array_multisort($arr_field,$sort_type,$multi_array);
return $multi_array;

}
$default['users'] = multi_array_sort($default['users'],'name',SORT_DESC);
print_r($default);

萌吟 回答

clipboard.png

如果是我來(lái)做的話,大概采用這么個(gè)思路。首先找到關(guān)鍵信息所在位置。信息都有具體的層級(jí)結(jié)構(gòu),具體到對(duì)應(yīng)到哪個(gè)html標(biāo)簽,這個(gè)html標(biāo)簽具有什么class屬性,這么一步作用是縮小了范圍。然后查找關(guān)鍵字:比如公司名稱(chēng)、手機(jī)、姓名之類(lèi)的,找到關(guān)聯(lián)的字段。最后考慮用正則輔助。

我以為 回答

如下為生成器的 next() 函數(shù)的描述

開(kāi)始生成器函數(shù)的執(zhí)行或者在最后一次執(zhí)行的yield表達(dá)式處恢復(fù)執(zhí)行。當(dāng)生成器函數(shù)使用next()方法恢復(fù)執(zhí)行時(shí),當(dāng)前的yield表達(dá)式始終None。然后執(zhí)行繼續(xù)行進(jìn)到下一個(gè)yield表達(dá)式,在那里生成器被再次掛起并返回expression_list的值給next()的調(diào)用者。

即你在第一次 yield 5 后,,這個(gè)時(shí)候 m= 這個(gè)賦值操作根本沒(méi)有執(zhí)行,然后,第二次使用 next 時(shí), 當(dāng)前的 yield 表達(dá)式為 None,即 m=None

乖乖噠 回答

add 'r' in front of address, like this (r'C:....')

遲月 回答

如果你需要的數(shù)據(jù)在html的標(biāo)簽里,那就直接讀取這一段html標(biāo)簽咯。
你具體說(shuō)一下“關(guān)鍵數(shù)值”是哪個(gè)東西

for循環(huán)結(jié)束后,i=3;
obj在循環(huán)外(又是一個(gè)對(duì)象,會(huì)被引用。你不用對(duì)象就不會(huì)有問(wèn)題)最后拿到的就都是i=3的時(shí)候的數(shù)據(jù)。
所以你需要把obj的聲明放循環(huán)里面,每次循環(huán)結(jié)束后,obj這個(gè)對(duì)象都會(huì)被重新構(gòu)造,不會(huì)出引用問(wèn)題,賦值就OK了。

久舊酒 回答

https://weibo.com/aj/mblog/fs...

沒(méi)錯(cuò)的話,獲取到的數(shù)據(jù)應(yīng)該是這條。最后多一句,對(duì)象要找對(duì),不然容易耽誤了一生。

練命 回答

參考這里
發(fā)現(xiàn)自己也不懂,抱著學(xué)習(xí)的態(tài)度把上面的翻譯了一遍(翻譯得太挫勿噴,能看英文盡量看英文吧)

貼在CSDN上了,鏈接在這

尕筱澄 回答

@tombear 謝謝,這個(gè)文章確實(shí)不錯(cuò),改下:
index.html或其他類(lèi)型的首頁(yè)

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>Demo</title>
    <link rel="icon" href="/favicon.ico" mce_href="/favicon.ico" type="image/x-icon">
    <link rel="shortcut icon" href="/favicon.ico" mce_href="/favicon.ico" type="image/x-icon">
    <style media="screen" type="text/css">
       #appLoading { width: 100%; height: 100%; }
       #appLoading span {
            position: absolute;
            display: block;
            font-size: 50px;
            line-height: 50px;
            top: 50%;
            left: 50%;
            width: 200px;
            height: 100px;
            -webkit-transform: translateY(-50%)  translateX(-50%);
            transform: translateY(-50%)  translateX(-50%);
        }
    </style>
  </head>
  <body>
    <div id="appLoading">
       <span>Loading...</span>
    </div>
    <div id="app" style="display: none">
       <app></app>
    </div>
    <!-- built files will be auto injected -->
  </body>
</html>

App.vue中加入:

 mounted(){
        document.getElementById('app').style.display = 'block';
        document.getElementById('appLoading').style.display = 'none';
 }

OK,謝謝

維他命 回答

刪除文件夾下的numbers.pyc重新執(zhí)行下代碼