[英]regex extraction error
我需要從我的網站表單中提取客戶電子郵件。 為了自動化,我寫道
# filename variables
import re
import os
import urllib2
newfilename = 'result.txt'
id = 1
while (id < 25):
html = urllib2.urlopen("https://mywebsite.com/printform.php?userid={id}".format(id=id)).read()
bulkemail = re.findall(r'(\b[\w.]+@+[\w.]+.+[\w.]\b)',html)
id = id+1
emails = ""
for x in bulkemail:
emails += str(x)+"\n"
# function to write file
def writefile():
f = open(newfilename, 'w')
f.write(emails)
f.close()
print ("File written.")
writefile()
這只是打印出我文件輸出中的最后一封電子郵件。 我知道這很愚蠢,但是誰能指出我想念的地方
將emails
聲明放在while
循環和for
循環之前:
id = 1
emails = ""
while (id < 25):
html = urllib2.urlopen("https://mywebsite.com/printform.php?userid={id}".format(id=id)).read()
bulkemail = re.findall(r'(\b[\w.]+@+[\w.]+.+[\w.]\b)',html)
id = id+1
for x in bulkemail:
emails += str(x)+"\n"
或者, 將電子郵件收集在一個列表中 ,然后輸入:
id = 1
emails = []
while (id < 25):
html = urllib2.urlopen("https://mywebsite.com/printform.php?userid={id}".format(id=id)).read()
emails += re.findall(r'(\b[\w.]+@+[\w.]+.+[\w.]\b)',html)
id += 1
with open(newfilename, 'w') as f:
for email in emails:
f.write(email)
print("File written.")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.