この方法では、いくつかのhtmlデータと画像リンクを抽出し、あらかじめ作成したテンプレートに整理してからwebbrowser.openで表示するか、外部コード用のhtmlコードTypeReqを渡そうとすると、* regefindallにargsが返されます
これまでは、内部でこの関数を呼び出すだけで、urlを手動で入力していたため、毎回テンプレートが正常に作成されました。今、re.findall()はタプル* argsを受け入れず、何を試しても(''.join, '{}'.format(tup), repr(), str()
)、それはうまくいきませんでした。 Pythonを使用して2.7.12。ですから、基本的に私の質問は、どのように* args(これは常に文字列になります)をcreate_template()に渡すのですか?
def create_template(*args):
p = re.compile('(?<=\/)[0-9]+|[0-9]+(?!.)')
if args:
argstring = '{}'.format(args)
itemID = re.findall(p,argstring)[0]
new_html = change_links(itemID)
info = get_walmart_info(itemID)
template = finish_template(new_html,info)
webbrowser.open('finished wtemplate.html')
return template
else:
url = raw_input("Enter itemID/url: ")
itemID = re.findall(p,url)[0]
new_html = change_links(itemID)
info = get_walmart_info(itemID)
finish_template(new_html,info)
webbrowser.open('finished wtemplate.html')
if __name__ == '__main__':
create_template()
と私は取得していますエラー(外部で使用する場合、まだ細かい内部使用):
Traceback (most recent call last):
File "<pyshell#23>", line 1, in <module>
wTemplate.create_template('37651390')
File "C:\Users\User\Desktop\Gal\Programming\wTemplate.py", line 91, in create_template
argstring = '{}'.format(*args)
File "C:\Python27amd64\lib\re.py", line 181, in findall
return _compile(pattern, flags).findall(string)
TypeError: expected string or buffer
あなたはどのような議論をしていますか? –
エラーとコードが一致していないようです。 –
入力例と期待される出力を提供できますか? 'create_template()'がやろうとしていることは私には分かりません –