scrapy 爬取京東商品列表

2021-08-26 05:49:24 字數 999 閱讀 4644

import scrapy

class jdspider(scrapy.spider):

#scrapy crawl name便是由這個name決定的

name = 'jd'

def start_requests(self):

url = ''

yield scrapy.request(url=url,callback=self.parse)

def parse(self,response):

links = response.css('li.cate_menu_item a')

for link in links:

title = link.css('a::text').extract_first()

href = link.css('a::attr("href")').extract_first()

d =

#哎,他大爺的,就因為乙個縮排浪費了我半個小時。。。。

yield d

然後jd.json檔案中文為二進位制編碼,為了顯示為中文,不用o輸出而是採用管道形式,需作一下調整,:

1、修改settings.py檔案,取消掉下列**的注釋

item_pipelines =
2、修改pipelines.py檔案

import json

class jdspiderpipeline(object):

def process_item(self, item, spider):

with open('jd.json','a') as f:

json.dump(dict(item),f,ensure_ascii=false)

f.write('\n')

return item

3、最後選擇檔案的顯示為gbk模式,如下圖所示結果:

爬取京東商品

一 進入京東主頁 二 進入商品詳情頁 2 商品名稱 3 商品 from selenium import webdriver 用來驅動瀏覽器的 相當於模擬人的點選事件來連續的訪問瀏覽器 from selenium.webdriver import actionchains 破解滑動驗證碼的時候用的 可...

爬取京東商品(js)

from selenium import webdriver import csv import time 1.接收要搜尋的商品型別,開啟商品搜尋頁面 pro input 請輸入商品名稱 driver webdriver.chrome driver.get driver.find element b...

Python爬取京東商品

自動開啟京東首頁,並輸入你要搜尋的東西,進入介面進行爬取資訊 from selenium import webdriver import time class jdspider object def init self self.browser webdriver.chrome self.url s...