在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/ Python問答

首先,爬這類網(wǎng)站你得看網(wǎng)頁(yè)的源碼,而不僅僅是右鍵檢查。因?yàn)閞equest.get獲取的是網(wǎng)頁(yè)的源碼,而不是瀏覽器修飾后你看到的html。
通過網(wǎng)頁(yè)源碼可以看到
clipboard.png
你獲取的就是這玩意。甚至你可以soup.findAll('table'),能解析到的‘table’也只有這玩意。
本身可以跳過talbe標(biāo)簽,可以通過 class="verdana"的span標(biāo)簽、class="date"的td標(biāo)簽找得更細(xì),但源碼看
clipboard.png
你所需要的東西是js渲染上去的,不是本身html代碼里就有的。
所以你需要的東西在這里:https://www.itjuzi.com/invest...

clipboard.png

去request.get這個(gè)url,再解析(可能需要用到j(luò)son這個(gè)包),才能獲得你想要的東西

其次,.find(‘table’)是遍歷所有talbe標(biāo)簽后返回第一個(gè)<table>標(biāo)簽,在你不確定有多少<table>標(biāo)簽的情況下,你這樣寫也只返回第一個(gè)。所以可以用.findAll看看有多少table標(biāo)簽,確定第幾個(gè),或者像上面提到,給它加限定條件,比如Soup.find('table',class_='list-invecase'),或是Soup.find('span',class_='verdana')這樣,更有利于你的尋找。

最后,建議官方文檔,https://www.crummy.com/softwa...

賤人曾 回答

mac下正常,ubuntu下正常,估計(jì)是windows的python命令行不支持吧,我在win上也是033識(shí)別成亂碼

耍太極 回答

PYTHON

lala = [1,1,1,2,3,4,5,8,10,22,24,25,26,66]
res = []
tmp = [lala[0]]
for i in range(1, lala.__len__()):
    if lala[i] - lala[i-1] == 1:
        tmp.append(lala[i])
    else:
        if len(tmp) == 1:
            res.append(tmp[0])
            tmp = [lala[i]]
        else:
            res.append(tmp)
            tmp = [lala[i]]

print(res)
清夢(mèng) 回答

抓包工具:fiddler,charles;
1.如果是https請(qǐng)求,需要設(shè)置代理,在手機(jī)上安裝相關(guān)軟件的證書,以中間人攻擊的方式,能夠看到http傳輸?shù)臄?shù)據(jù);
2.抓包開始,請(qǐng)清除緩存,不少app為了節(jié)約加載時(shí)間,一些數(shù)據(jù)會(huì)緩存。
3.盡量避免其他軟件在抓包時(shí)的干擾,后臺(tái)清理掉,或者在抓包軟件中設(shè)置只針對(duì)某一個(gè)域名抓取;

艷骨 回答

寫個(gè)回答試試,請(qǐng)忽略!

來守候 回答

你的 python file 文件名跟 numpy 同名, 在 import 的時(shí)候匯入了自己而非你想要的那個(gè) numpy。

改個(gè)名字應(yīng)該就好了。


我回答過的問題: Python-QA

妖妖 回答

一般不會(huì)的,requests只獲取了文檔,里面的JS沒有獲取,所以不會(huì)被統(tǒng)計(jì)。

款爺 回答

可以的。 qt有可視化的ui設(shè)計(jì)編輯器。 文件格式為.ui,pyqt也有現(xiàn)成的.ui轉(zhuǎn) .py的命令行工具。

祈歡 回答

我一般設(shè)置的是遠(yuǎn)程的deployment。如下圖:

圖片描述

對(duì)于 add local 設(shè)置的虛擬環(huán)境,我沒有做過,即使是本地的虛擬環(huán)境,我也沒有設(shè)置過這個(gè),里面的內(nèi)容就如下圖:

圖片描述

囍槑 回答

首先要搞清楚『域名』和『主機(jī)名』的區(qū)別。baidu.com是域名嗎?www.baidu.com是域名嗎?實(shí)際上,當(dāng)你查看DNS設(shè)置的時(shí)候,會(huì)發(fā)現(xiàn)有2A記錄。如果我們把baidu.com理解為域名的話,域名是不可以訪問的,只有主機(jī)名才可以訪問。那為什么你可以輸入http://baidu.com依然能訪問呢?這是因?yàn)樵?code>DNS里有一條@記錄指向一個(gè)IP地址,這個(gè)@的意思就相當(dāng)于http://@.baidu.com,但是不顯示出來,所以變成了http://baidu.com。所以,baidu.com是域名,而@.baidu.comwww.baidu.com是主機(jī)名。

對(duì)于域名來說,是需要有DNS或者NS解析的。所以當(dāng)你查詢說:請(qǐng)問baidu.com這個(gè)域名的NS是什么?返回的結(jié)果告訴你ns2.baidu.com這個(gè)主機(jī)就是用來解析baidu.com這個(gè)域名的。下一步,你可以問ns2.baidu.com這臺(tái)主機(jī):請(qǐng)你告訴我:www.baidu.com這臺(tái)主機(jī)的IP地址是多少?

你的第2個(gè)問題,你不要加+short,而直接查詢,你會(huì)看到www.a.shifen.com是一條CNAME記錄,它不是A記錄。CNAME的意思是別名,相當(dāng)于快捷方式,所以在這里,當(dāng)你訪問www.baidu.com這條主機(jī)記錄的時(shí)候,它首先來到www.a.shifen.com這條記錄,從這里再轉(zhuǎn)向到下面的數(shù)字IP。而baidu.com,我上面講了,它實(shí)際相當(dāng)于是@.baidu.com,對(duì)它沒有設(shè)置CNAME這樣的別名,而是直接設(shè)置了IP地址,所以看到的只是數(shù)字了。

希望我講明白了,不明白的可以繼續(xù)探討。

情未了 回答

許多機(jī)器在做位移操作的時(shí)候都是只出理低log(w)位,也就是所說的w%k位

(但是,具體有哪些機(jī)器我沒有了解過)

那么,這么處理的原因,在我看來,是由CPU對(duì)位移指令的實(shí)現(xiàn)所決定的。就32位機(jī)器而言,Intel CPU(具體是從哪一代開始我記不清了)會(huì)對(duì)位移量截取低五位。

那么反映到高級(jí)語言層面上,有一些語言標(biāo)準(zhǔn)會(huì)遵循這個(gè)操作,其對(duì)應(yīng)的編譯器或者解釋器便會(huì)按照標(biāo)準(zhǔn)來處理,位移的時(shí)候截取位移量的低log(w)位,比如JavaScript的解釋器。

但是有一些語言規(guī)范是規(guī)避了這個(gè)問題的,比如C語言,這個(gè)操作就是未定義行為,它的編譯器在處理時(shí)就如上面有答主所說過的,將按自己的理解來處理。

非常典型的一點(diǎn)你可以嘗試一下,在C語言中用gcc編譯器試一下這段代碼

int a = 33;
printf("%d", 1 << a); // 2
printf("%d", 1 << 33); // 0

第一種情況,在編譯過程中,由于gcc編譯器不知道變量a的值,所以,位移量為33,CPU執(zhí)行時(shí),會(huì)截取低5位,答案是2
第二種情況,在編譯過程中,如果加上-Wall編譯選項(xiàng),gcc編譯器會(huì)提醒你,位移量大于類型的寬度,所以,按照gcc自己處理的來,得到的答案是0,就是你的想法。

至于為什么要截取低log(W)位,這大概是和CPU處理字長(zhǎng)有關(guān)

我的理解是這樣,如果有錯(cuò)誤,忘請(qǐng)指正

心癌 回答

let allSpan = document.querySelectorAll('#yourdiv span')
let spanArr = [];
Array.prototype.forEach.call(allSpan, (v) => {

if(v.className != "") spanArr.push(v);

})

野橘 回答

真巧前幾天有點(diǎn)類似的需求,但不是寫終端,就簡(jiǎn)單寫了下,獲取一個(gè)命令行可以隨便輸入命令,并且輸入的命令之間不是隔離狀態(tài),代碼如下 給你點(diǎn)參考,至于寫終端,你可能需要加很多東西了,并不是能輕易辦到的,建議secureCRT for mac 我就在用表示 還行

import paramiko
import time

ip = "10.211.55.6"
port = 22
username = "root"
password = "redhat"


def recv_str(client_channel, tag_str=None):
    result = client_channel.recv(65535).decode()
    while not result.endswith(tag_str):
        result = result + client_channel.recv(65535).decode()
    return result


client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect(hostname=ip, port=port, username=username, password=password,
               timeout=60)
channel = client.invoke_shell()
channel.send("ping www.baidu.com\n")
time.sleep(2)
channel.send(chr(3))
res = recv_str(channel, "[root@centos-linux ~]# ")
print(res)
client.close()
巷尾 回答

反射主要是用來做框架的,一般不會(huì)去使用的。

過客 回答

是不是用了powerline? 應(yīng)該是字體不支持,你去裝幾個(gè)powerline相關(guān)的字體試試。

刮刮樂 回答

commit提交一下。或者改成使用with語句。
從不看教程不看文檔的嗎?

孤客 回答

以下是大膽地瞎猜內(nèi)容
在C/C++中,輸出到標(biāo)準(zhǔn)輸出流里面的內(nèi)容首先會(huì)被寫到一個(gè)緩沖區(qū)內(nèi),而不是立即顯示在屏幕上,例如下面這個(gè)程序

#include <stdio.h>
#include <unistd.h>

int main(void)
{
    while (1)
    {
        printf("%c", '#');
        sleep(1);
    }
}

編譯運(yùn)行,你不會(huì)看到任何輸出,因?yàn)橹挥性?strong>緩沖區(qū)中出現(xiàn)換行符\n 或者你手動(dòng)清空緩沖區(qū)時(shí),里面的內(nèi)容才會(huì)輸出到屏幕上。下面這個(gè)程序就可以

#include <stdio.h>
#include <unistd.h>

int main(void)
{
    while (1)
    {
        printf("%c", '#');
        fflush(stdout);
        // 或者直接這樣
        // printf("%c\n", '#');
    sleep(1);
    }
}

所以python解釋器里面的標(biāo)準(zhǔn)輸出可能也是帶緩沖的,你的第一個(gè)例子是沒有\n 的,而第二個(gè)是有的。

簡(jiǎn)單查了一下資料也發(fā)現(xiàn)是這樣的,可以用sys.stdout.flush() 或者采用樓上的方案

背叛者 回答

如果不是做特定的oj題目的話, 推薦使用xml, 更直觀, 也更好管理

from lxml import etree


def gen_xpath(path):
    return '//root/' + '/'.join(path)


def add_value(root, path, value):
    purpose_path = gen_xpath(path)
    folder = root.xpath(purpose_path)
    parent_folder = root
    if not folder:
        for i, name in enumerate(path, 1):
            temp_path = gen_xpath(path[:i])
            temp_folder = root.xpath(temp_path)
            if not temp_folder:
                parent_folder = etree.SubElement(parent_folder, name)
            else:
                parent_folder = temp_folder
    
    folder = root.xpath(purpose_path)[0]
    file = etree.SubElement(folder, 'file')
    file.set('name', value[0])
    file.set('size', value[1])


if __name__ == '__main__':
    root = etree.Element('root')
    add_value(root, ['A', 'B', 'C'], ('output.txt', '2mb'))
    add_value(root, ['X', 'Y'], ('log.txt', '10kb'))
    add_value(root, ['A', 'B', 'C'], ('video.mp4', '2GB'))
    etree.ElementTree(root).write('test.xml', pretty_print=True)

輸出結(jié)果:

<root>
  <A>
    <B>
      <C>
        <file name="output.txt" size="2mb"/>
        <file name="video.mp4" size="2GB"/>
      </C>
    </B>
  </A>
  <X>
    <Y>
      <file name="log.txt" size="10kb"/>
    </Y>
  </X>
</root>