作者查詢 / octantis
作者 octantis 在 PTT [ Python ] 看板的留言(推文), 共92則
限定看板:Python
看板排序:
全部WOW254NBA139car92Python92Spurs92NY-Yankees72Stock71hardware62Gossiping38WorldCup27marriage23Olympics_ISG17Windows16nb-shopping15Linux14CFantasy13creditcard13NBA_Film12movie11Military10Foreign_Inv9MLB9BuyTogether7PC_Shopping7Wargaming7Examination6UTAH-JAZZ6MAC5Baseball4KoreaDrama4Lifeismoney4Shooter-game4Browsers3car-pool3FuMouDiscuss3HatePolitics3WomenTalk3AndroidDev2Bank_Service2Beauty2Celtics2NBAEasyChat2OTT2BLAZERS1Bucks1Doctor-Info1EAseries1GuessX31Hawks1Hunter1K_baseball1KingdomHuang1Kings1KoreanPop1KR_Entertain1MuscleBeach1NCHUS1Property_M1PublicIssue1Salary1Thunder1Web_Design1<< 收起看板(62)
5F→: else有存在的必要,比起將全部的程式碼都放進try,只將05/23 20:36
6F→: 可能出問題的程式碼放在try,其他放進else 能一眼看出會05/23 20:37
7F→: 跳出例外的地方05/23 20:38
2F推: 看你是要全部抓一起還是一個個抓,全部抓一起用s.text05/10 21:30
3F→: 分開抓用s.strings或s.elements.text05/10 21:35
4F→: 可以用len()來判斷list是否為空05/05 23:57
5F→: 出現Warning是因為你沒有註明使用何種Parser,所以他預05/06 00:04
6F→: 設使用內建的html.parser並跳出警告,但html.parser不支05/06 00:05
7F→: 援xml,所以你需要安裝lxml套件,才可以使用05/06 00:06
8F→: BeautifulSoup(markup, "lxml")或05/06 00:06
9F→: BeautifulSoup(markup, "xml")05/06 00:06
12F→: requests網路上有官方的教學文件05/06 11:45
12F→: 要修改tkinter底下的init.py才可以(極度不推荐)05/01 00:48
21F→: 你們是不是誤會了什麼,開頭宣告的utf8只是表示這份文件04/27 00:09
22F→: 要用哪種編碼來將py檔編成二進位檔,跟你的open一點關係04/27 00:10
23F→: 也沒有,你的open並write預設用的編碼是看sys模組裡的04/27 00:11
24F→: sys.getdefaultencoding(),它才是判斷你的資料該以何種04/27 00:13
25F→: 編碼編成二進位並寫入文件。跟你用beautifulsoup抓進來04/27 00:14
26F→: 的資料也一點關係也沒有,BeautifulSoup會把抓到的資料04/27 00:16
27F→: 轉成Unicode不管資料原本是何種編碼,讀進來就是Unicode04/27 00:16
28F→: 此外開頭的宣告utf8只是'告訴'別人你這份py檔要用什麼編04/27 00:21
30F→: 碼,並不代表你實際的編碼,你也可以開頭宣告utf8,但把04/27 00:21
31F→: py檔存成ascii,因此在存檔時需特別注意你的存檔編碼跟04/27 00:23
32F→: py檔開頭的宣告是不是同一個,否則別人看你開頭是utf8但04/27 00:24
33F→: 你存成其他的就有可能出現py檔亂碼等情形04/27 00:25
1F推: 兩個方案提供給你04/23 22:08
2F→: 1.如果你不想大動程式碼, 第34行的for多傳tag_list進去04/23 22:08
3F→: for link, link_tag in zip(links, tag_list):04/23 22:09
4F→: 然後就可以把link_tag放進74、75行。但這種方式難看,以04/23 22:11
5F→: 後要改動也不容易,第二種方式就像之前M大說的存成dict04/23 22:12
6F→: 搭配函式來呼叫,這樣以後修改才不會那麼辛苦04/23 22:13
7F→: 第二方式你的程式碼就要整個改動04/23 22:13
1F→: data宣告錯地方了,scope的問題04/23 10:08
2F→: 將data宣告在35行的迴圈裡面04/23 10:13
3F→: 另外再給個建議,用函式將每個功能拆成一小部分,整個程04/23 10:15
4F→: 式變成函式的組合,比你現在全部寫在一起容易閱讀多了04/23 10:16
5F→: 你這樣寫,以後有什麼地方要修改你都要整個重看才知道怎04/23 10:17
6F→: 麼改,全部寫在一起就算你註解再多都沒用04/23 10:18
1F→: 你這樣哪有解決他的問題...你去RUN一下他的原始碼04/22 11:34
2F→: 另外存成dict還要考慮key是否唯一04/22 11:39
10F→: 就是相當於for迴圈裡再一個for迴圈04/22 17:03
11F→: 不然就是用下面寫的簡化版 看起來比較乾淨簡單04/22 17:04
12F→: 那行等於04/22 17:05
13F→: for link in fol_table:04/22 17:06
14F→: for tag in link.findAll('a', {'href': True}):04/22 17:07
15F→: a_links.append(tag['href'])04/22 17:08
19F→: 啊!你是用bs3而非bs4,難怪會出錯,bs3可能沒法這樣用04/22 20:14