Google ドキュメントにある URL のリストを読み込もうとしています。私がやりたいのは、Google doc スプレッドシートから URL を読み取り、各 URL をスクレイピングすることです。
import gdata.docs.data
import gdata.docs.client
import gdata.docs.service
import gdata.spreadsheet.service
import re, os
username = 'myemail.nuigalway@gmail.com'
password = 'mypassword'
doc_name = 'My document'
gd_client = gdata.spreadsheet.service.SpreadsheetsService()
gd_client.email = username
gd_client.password = password
gd_client.source = 'https://docs.google.com/spreadsheet/ccc? key=0AkGb10ekJtfQdG9EOHN0VzRDdVhWaG1kNVEtdVpyRlE#gid=0'
gd_client.ProgrammaticLogin()
q = gdata.spreadsheet.service.DocumentQuery()
q['title'] = doc_name
q['title-exact'] = 'true'
feed = gd_client.GetSpreadsheetsFeed(query=q)
spreadsheet_id = feed.entry[0].id.text.rsplit('/',1)[1]
feed = gd_client.GetWorksheetsFeed(spreadsheet_id)
worksheet_id = feed.entry[0].id.text.rsplit('/',1)[1]
rows = gd_client.GetListFeed(spreadsheet_id, worksheet_id).entry
for row in rows:
for key in row.custom:
urls = row.custom[key].text
newlist = urls
print 'this is a list', newlist
elec_urls = newlist.strip()
#After this each the Url in the list is scraped using scraperwiki
これは、spredsheet に URL が 1 つしかない場合は正常に機能しますが、ドキュメントに複数の URL がある場合、プログラムは最後の URL のみをスクレイピングします。
ループを使用すると、これを解決して newlist[0] から newlist[i] に切り替えることができると思いましたが、newlist[0] が http://(URL) の h に = であることがわかりました。最後に入力した URL と newlist[1] = t など。
どんな助けでも感謝します。