【发布时间】:2014-12-22 05:35:44
【问题描述】:
我正在学习如何使用 Scrapy。我正在按照教程使用scrapy模拟用户登录,然后在成功登录后收集数据(下面的代码)。但是,如果它是登录过程的一部分,一个程序如何从下拉列表中选择某个选项?
class LoginSpider(BaseSpider):
name = 'example.com'
start_urls = ['http://www.example.com/users/login.php']
def parse(self, response):
return [FormRequest.from_response(response,
formdata={'username': 'john', 'password': 'secret'},
callback=self.after_login)]
def after_login(self, response):
# check login succeed before going on
if "authentication failed" in response.body:
self.log("Login failed", level=log.ERROR)
return
# continue scraping with authenticated session...
选择标签:
<select>
<option>Value 1</option>
<option>Value 2</option>
<option>Value 3</option>
</select>
除了输入登录信息之外,我如何编程 scrapy 在下拉列表中选择值 1。
【问题讨论】:
-
scrapy 并没有什么神奇之处。打开浏览器开发者工具、网络选项卡,提交请求并查看下拉值在请求中的显示方式。希望对您有所帮助。
标签: python html web-scraping scrapy