如何在r中创建与自动亚马逊联盟链接的交互式书列?

Antoine Soetewey 2019-12-26 8 minute read

介绍

书桌是分享您已阅读的齐鲁风采群英会的有用方式,您推荐给其他读者和/或推广您所写的齐鲁风采群英会。它可以像个人网站或博客上显示的齐鲁风采群英会名称一样简单。但是,您可能希望以更复杂的方式介绍这份齐鲁风采群英会列表,例如在一个带有标题的表格中,作者和链接购买它。

在这个博客文章中,我向您展示了如何在R.通过Interactive创建具有自动亚马逊联盟链接的交互式齐鲁风采群英会列表,我的意思是一本书列表,允许用户通过标题或作者搜索齐鲁风采群英会(如此) 书中列表 例如)。此外,通过自动亚马逊联盟链接,我的意思是URL(当然是您的联盟链接),将直接重定向到亚马逊WebStore上的书库上的齐鲁风采群英会,而无需手动为每本书创建链接。

这种技术对于那些在他们的列表中有数百家齐鲁风采群英会的人特别有帮助,因为您只需要创建一次URL,它将自动适应所有齐鲁风采群英会。

要求

要使用您的联盟链接构建此增强的书目,您需要:

  • 亚马逊associates帐户。登记 这里 如果您还没有帐户
  • 齐鲁风采群英会列表(您推荐和/或由您写的)

创建书目

你有两个选择:

  1. 在Excel中创建它然后将其导入r
  2. 直接在r中创建它

在Excel中创建它然后导入它

最简单的方法是遵循以下步骤:

  1. 打开Excel文件并用两列填充它:(i)一个带有标题的一个和(ii)与作者的一秒钟(见下图)
  2. 以.csv格式保存(在Excel,文件中> Save As… >选择CSV文件格式并保存)
  3. 将其导入R(见 如何导入.csv文件 如果你与进口斗争)
  4. (如果您需要在将来编辑列表,请直接在.csv文件中编辑它,而不是在Excel文件中)

以下是您在Excel中创建的BookList的方式应该是如此(我认为更多您的齐鲁风采群英会):

第1步:在Excel创建的书柜

We now import it into RStudio and rename the dataset as dat (see 这里 为什么我总是使用通用名称而不是更具体的名称):

dat <- read.csv("booklist.csv", # name of your file with .csv extension
  header = TRUE, # names of variables are present
  sep = ","
) # values are separated by a comma

You can always check that your booklist is correctly imported by running head(name_of_dataset) or View(name_of_dataset).

直接在r中创建它

You can create your booklist directly in R with the command data.frame():

# Create the data frame named dat
dat <- data.frame(
  "Title" = c(
    "A Random Walk Down Wall Street",
    "Naked Statistics",
    "Freakonomics"
  ),
  "Author" = c(
    "Burton G. Malkiel",
    "Charles Wheelan",
    "Steven D. Levitt and Stephen J. Dubner"
  ),
  stringsAsFactors = FALSE
)
# Print the data frame
dat
##                            Title                                 Author
## 1 A Random Walk Down Wall Street                      Burton G. Malkiel
## 2               Naked Statistics                        Charles Wheelan
## 3                   Freakonomics Steven D. Levitt and Stephen J. Dubner

使它互动

In order to be able to search for books by author or title, we use the datatable() command from the DT package. Below the table with the default options:

library(DT)
datatable(dat)

让我们通过以下方式改进这张表:

  • 删除行号码
  • 在“标题”顶部添加过滤器和“作者”列
  • 添加复制或下载表的可能性
  • 仅显示前5个条目而不是10
  • 按升序按标题订购齐鲁风采群英会
datatable(dat,
  rownames = FALSE, # remove row numbers
  filter = "top", # add filter on top of columns
  extensions = "Buttons", # add download buttons
  options = list(
    autoWidth = TRUE,
    dom = "Blfrtip", # location of the download buttons
    buttons = c("copy", "csv", "excel", "pdf", "print"), # download buttons
    pageLength = 5, # show first 5 entries, default is 10
    order = list(0, "asc") # order the title column by ascending order
  )
)

最后结果

通过单击不同的链接,检查一切正常工作。如果您没有错过任何步骤,它应该将您带到亚马逊商店,其中包含搜索栏中的齐鲁风采群英会和作者,因此在搜索结果中出现的齐鲁风采群英会。

谢谢阅读。我希望这篇文章帮助您构建一个与您列表中每本书的自动关联链接的交互式齐鲁风采群英会列表。

一如既往,如果您有问题或与本文所涵盖的主题相关的建议,请将其添加为评论,以便其他读者可以从讨论中受益。



喜欢这篇文章?

获取更新 每次发布新文章。
任何垃圾邮件都没有任何垃圾邮件。
分享: