因此,我正在研究一個從csv文件抓取Twitter用戶名的程序,並將其插入到一個可以下載所有tweets的函數中。我幾乎已經得到它的工作,除了我認爲從csv行的輸出有括號和撇號,['POTUS']
而不是POTUS
,Twitter不會接受。Python「TypeError:expected string or buffer」with re and csv
這裏是我使用的代碼:
with open('names.csv') as namescsv:
namereader = csv.reader(namescsv)
for row in namereader:
row = re.sub(r'[^\w=]', '',row)
print row
我用來重新嘗試刪除奇怪的字符,但是當我執行的代碼,我得到這個錯誤:
File "/home/ian/Desktop/tweepy_scripts/tweetdownloader_allcsv_v2.py", line 66, in <module>
row = re.sub(r'[^\w=]', '',row)
File "/usr/lib/python2.7/re.py", line 151, in sub
return _compile(pattern, flags).sub(repl, string, count)
TypeError: expected string or buffer
一些幫助會很棒!我是一名初學者,我嘗試使用以前的文章來解決這個問題並沒有產生太大的影響。
我不是蟒蛇專家,但你的正則表達式之前,「R」看上去錯位的 –
的'r'是好的。它意味着「原始」或「正則表達式」字符串,即禁用「\」解釋。 –
我猜'namereader'中的行不是遍歷字符串,而是遍歷一些其他類型的對象 – jez