Re: [問題] 關於程式輸出時如何呼叫第二支程式的問題

看板Python作者 (@.@)時間9年前發表 (2016/04/21 21:15), 9年前編輯推噓5(5014)
留言19則, 3人參與, 最新討論串2/5 (看更多)
※ 引述《busystudent (busystudent)》之銘言: : a主程式碼 : http://dpaste.com/2S5SC2B 你主程式碼下面有問題 links = ['http://www.diigo.com/user/tony_swann/' + a ]放到外面去 否則只有一個然後包成list再用for進去list裡讀出來有何意義? 改成: links = ['http://www.diigo.com/user/tony_swann/' + x for x in tag_list] for link in links: res = requests.get(link) soup = BeautifulSoup(res.text.encode("utf-8"), 'html.parser') fol_table = soup.findAll('div', {'class': 'Titleinner'}) a_links = [tag['href'] for link in fol_table for tag in link.findAll('a', {'href': True})] #將一個tag的所有結果放進同一個list,然後將list丟給b主程式碼 可簡化成a_links = [a['href'] for a in soup.select('div.Titleinner a')] 將fol_table與a_link合併 結構: links裡裝所有的標籤 a_link為一個標籤裡的所有分析到的網址 然後把a_link丟進b主程式碼 : b主程式碼 : http://dpaste.com/1A5ZHM8 不知道是不是你要的答案,你的問題我要想很久才猜得到你"可能"想表達的意思... 列出你想得到的答案型式,不然光猜就要猜好久 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.164.133.245 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1461273344.A.39E.html ※ 編輯: octantis (1.164.133.245), 04/22/2016 06:18:04

04/22 10:24, , 1F
看描述就覺得好亂喔...
04/22 10:24, 1F

04/22 12:01, , 2F
你好 謝謝你的回文,之前的敘述不好,不好意思
04/22 12:01, 2F

04/22 12:02, , 3F
我把文章敘述修改了
04/22 12:02, 3F

04/22 16:39, , 4F
你好 有一行我看不懂,想請你解釋
04/22 16:39, 4F

04/22 16:41, , 5F
a_links = [tag['href'] for link in fol_table
04/22 16:41, 5F

04/22 16:41, , 6F
for tag in link.findAll('a', {'hr
04/22 16:41, 6F

04/22 16:41, , 7F
ef': True})]
04/22 16:41, 7F

04/22 16:41, , 8F
這一行是什麼意思?
04/22 16:41, 8F

04/22 16:42, , 9F
我第一看到撰寫兩種for在一行的式子
04/22 16:42, 9F

04/22 17:03, , 10F
就是相當於for迴圈裡再一個for迴圈
04/22 17:03, 10F

04/22 17:04, , 11F
不然就是用下面寫的簡化版 看起來比較乾淨簡單
04/22 17:04, 11F

04/22 17:05, , 12F
那行等於
04/22 17:05, 12F

04/22 17:06, , 13F
for link in fol_table:
04/22 17:06, 13F

04/22 17:07, , 14F
for tag in link.findAll('a', {'href': True}):
04/22 17:07, 14F

04/22 17:08, , 15F
a_links.append(tag['href'])
04/22 17:08, 15F

04/22 17:09, , 16F
謝謝你的說明!
04/22 17:09, 16F

04/22 17:10, , 17F
還有簡化版那行一否有誤,它報錯'NoneType'
04/22 17:10, 17F

04/22 17:12, , 18F
04/22 17:12, 18F

04/22 20:14, , 19F
啊!你是用bs3而非bs4,難怪會出錯,bs3可能沒法這樣用
04/22 20:14, 19F
文章代碼(AID): #1N6KC0EU (Python)
討論串 (同標題文章)
文章代碼(AID): #1N6KC0EU (Python)