python爬取大量数据报错_Python学习笔记7——爬取大规模数据

我们在爬取数据时,往往是连续爬取上百个页面,本篇以爬取赶集网为例,爬取大规模的数据。步骤如下:

爬取1级商品链接

爬取2级详情信息

爬取商品详情页

多进程爬取数据

一、爬取1级商品链接

新建一个Python文件,名字命名为my_channel_extracing,用于抓取大类商品链接。以抓取赶集网http://bj.ganji.com/wu/上二手商品为例,右侧的各类商品便是我们需要抓取的大类商品。

大类链接.jpg

①request页面

引入requests对http://bj.ganji.com/wu/进行访问,并输出打印结果,查询是否访问成功。

代码如下:

import requests

url='http://bj.ganji.com/wu/'

wb_data = requests.get(url)

print(wb_data.text)

requests页面

②解析页面

引入BeautifulSoup对网页进行解析,打印输出结果,查看网页解析是否成功。

代码如下:

import requests

from bs4 import BeautifulSoup

url='http://bj.ganji.com/wu/'

wb_data = requests.get(url)

soup = BeautifulSoup(wb_data.text.'lxml')

print(soup)

解析网页

③爬取大类链接

检查需要爬取的网页,定位链接位置,利用for循环输出所爬取的链接。通过观察网页,能发现网页的绝对路劲为http://bj.ganji.com,定义网页绝对路劲,最终输出完整的爬取页面。

import requests

from bs4 import BeautifulSoup

host_url = 'http://bj.ganji.com'#定义网页绝对路径

url = 'http://bj.ganji.com/wu/'

wb_data = requests.get(url)

soup = BeautifulSoup(wb_data.text,'lxml')

links = soup.select('#wrapper > div.content > div > div > dl > dt > a')

for link in links:

print(host_url+i.get('href'))

爬取大类链接

二、爬取2级商品链接

①爬取2级商品链接

将爬取的1级商品链接放入page_link,通过解析page_link,并再次利用for函数,输出2级商品链接。

import requests

from bs4 import BeautifulSoup

host_url = 'http://bj.ganji.com'#定义网页绝对路径

url = 'http://bj.ganji.com/wu/'

wb_data = requests.get(url)

soup = BeautifulSoup(wb_data.text,'lxml')

links = soup.select('#wrapper > div.content > div > div > dl > dt > a')

for link in links:

page_link = host_url + link.get('href')#1级网页

wb_data = requests.get(page_link)

soup = BeautifulSoup(wb_data.text,'lxml')

type_links = soup.select('#seltion > div > dl > dd

你可能感兴趣的:(python爬取大量数据报错)