我正在尝试使用来自网站 Allociné(最大的法国电影数据库)的电影数据创建一个 .csv 文件,用于一个研究项目,使用 import.io 的 Crawler,因为我的编程知识很差(目前正在攻读生态学博士学位)并且拥有一个易于理解的工具似乎是最好的主意。
对于我需要的每一部电影:
- 电影的标题
- 发布日期(FR 中的“Date de Sortie”)
- 电影的类型
这是 Allociné 电影页面的示例(用于《星球大战 I》):http ://www.allocine.fr/film/fichefilm_gen_cfilm=20754.html
起初我尝试使用 import.io 的选择工具,但它不起作用,因为有些电影有两个发布日期而不是一个(如上面的 SW1 - 1999 年的原始版本和 2012 年的 3D 版本('重播')) - 搞砸了爬行者。所以我不得不使用 XPaths 来识别我需要的元素。标题工作得很好(使用//title
),但我对发布日期和流派有疑问。
对于发布日期,我从页面源中提取的 XPath 是:
//*[@id="col_main"]/div[4]/div/div[2]/table/tbody/tr[2]/td/a/strong/span
我/@content
在最后添加以获取 yyyy-MM-dd 格式的日期,这导致:
//*[@id="col_main"]/div[4]/div/div[2]/table/tbody/tr[2]/td/a/strong/span/@content
但是,import.io 无法识别我需要他找到的元素。
对于流派,同样的事情,我从 Chrome 中获得了第一个流派(科幻小说)的 XPath:
//*[@id="col_main"]/div[4]/div/div[2]/table/tbody/tr[5]/td/a[1]/span
我需要 import.io 来收集所有流派,所以我删除了[1]
froma[1]
以获得完整的a
.
//*[@id="col_main"]/div[4]/div/div[2]/table/tbody/tr[5]/td/a/span
它也不起作用,import.io 返回一个空元素。
因此,任何关于它为什么不起作用的解释都将非常感激!对不起,如果我错过了一些明显的东西,正如我所说,我根本不是专家。
布莱斯