我正在尝试自动从此库http://www.dli.ernet.in/下载文件,并希望获得与特定语言相对应的所有书籍的列表(说:英语)
import requests
r = requests.get('http://www.dli.ernet.in/')
params = {'Language': 'English'}
但我不知道接下来该怎么做。我需要模仿
1)选择语言
2)点击搜索
3)获取所有图书名称的列表。
答案 0 :(得分:2)
要做的第一件事是弄清楚您的浏览器正在做出什么样的请求。您可以使用" Web开发人员工具"在Firefox中执行此操作:
这表明选择"英语"因为语言导致查询:
我们可以使用requests
库重现这一点,例如:
result = requests.get('http://www.dli.ernet.in/cgi-bin/advsearch_db.cgi',
params={
'language1': 'English',
'scentre': 'Any',
'listStart': '0',
'perPage': '25'
})
这将为我们提供result.text
中网页的文字。你会
需要使用HTML解析器(如lxml.html
或BeautifulSoup
)
解析这个并提取书籍列表。另请注意,这似乎是一个分页响应,这意味着您只需一次请求就无法获得所有结果。