4

教程帮助我收集网站上的第一个下拉列表条目。但我无法使用 Scrapy 获取第二个条件/依赖下拉框的数据。

假设以下程序是要走的路,那么第 2 步如何工作?到目前为止,这些值从未出现过......

  1. 获取第一个下拉框的列表条目
  2. 选择第一个下拉框的第一个值。
  3. 获取所有相关的下拉值。
  4. 迭代第一个下拉列表...

我认为下面的代码需要调整,因为代码用于提交表单:

    for i in range(len(brandCategoryList)):

        # Generate new request for each brand category's page
        yield FormRequest("http://www.xxxxxxxxxx.com",
                    method='POST',                         
                    formdata={'BrandName':'','CatBrand':brandCategoryList[i],'submit1':'Find+Product'},
                    callback=self.parseBrandPage,
                    meta={'brandCategoryId':i,'brandCategoryName':brandCategoryList[i]})

谢谢

4

1 回答 1

2

Scrapy 不会在您正在抓取的页面中运行任何 javascript 代码,并且依赖下拉菜单通常依赖 javascript 根据其控制下拉菜单中的选择来填充其选项。

如果您需要自动化/抓取需要 javascript 的内容,您可能需要考虑另一个库。从这里开始获取一些指示。

于 2012-10-10T22:54:38.383 回答