我正在尝试在熊猫数据框输出中呈现一个url。我跟随着其他一些示例,这是我的实现:
def create_url(product_name):
search = 'http://www.example.com/search'
url = 'http://www.example.com/search/'+product_name
return url
def make_clickable(url):
return '<a target="_blank" href="{}">{}</a>'.format(url, url)
...
df['url'] = df['product_name'].apply(format_url)
df.style.format({'url': make_clickable})
这会生成格式正确的原始文本超链接,但是在输出中不可点击。
我应该补充一点,我正在AWS sagemaker jupyterlab笔记本中执行此操作,这可能会禁用输出中的超链接。不确定我该如何检查。
答案 0 :(得分:1)
如果这行不通,我猜这是AWS问题
IPython.display.HTML
pandas.DataFrame.to_html
与escape=False
pandas.set_option('display.max_colwidth', 2000)
必须很大,以容纳链接标记的长度。我会说我认为这是坏事。不必为了确保'display.max_colwidth'
输出正确而设置to_html
。但这是:-/ from IPython import display
pd.set_option('display.max_colwidth', 2000)
display.HTML(df.assign(url=[*map(make_clickable, df.url)]).to_html(escape=False))