第一周作业

from bs4 import BeautifulSoup
import lxml
import time
import requests

base_url = 'http://bj.58.com/pbdn/0/pn'

def get_website(url):   #爬取每件商品网址,最后执行爬取详细信息函数
    
response = requests.get(url)
    time.sleep(2)
    soup = BeautifulSoup(response.text,'lxml')

#    wb_sites = soup.select('#infolist > div.infocon > table > tbody > tr.jztr > td.img > a')
    
wb_sites = soup.select('#infolist > div.infocon > table > tbody > tr.zzinfo > td.img > a')      #除了推广商品,剩下的都是转转商品;没有发现题目要求的正常商品。所以此处改为抓取转转商品

    
for wb_site in wb_sites:
        href = wb_site.get('href')
        get_details(href)


def get_details(href):  #爬取每件商品详细信息
    
time.sleep(2)
    response = requests.get(href)

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

    cates = soup.select('#nav > div.breadCrumb.f12')
    items = soup.select('body > div.content > div > div.box_left > div.info_lubotu.clearfix > div.box_left_top > h1')
    prices = soup.select('body > div.content > div > div.box_left > div.info_lubotu.clearfix > div.info_massege.left > div.price_li > span > i')
    areas = soup.select('body > div.content > div > div.box_left > div.info_lubotu.clearfix > div.info_massege.left > div.palce_li > span > i')
    views = soup.select('body > div.content > div > div.box_left > div.info_lubotu.clearfix > div.box_left_top > p > span.look_time')

    for cate, item, price, area, view in zip(cates, items, prices, areas, views):
        data = {
            'cate'  : list(cate.stripped_strings),
            'item'  : item.get_text(),
            'price' : price.get_text(),
            'area'  : area.get_text(),
            'view'  : view.get_text()
        }
        print(data)

for page_number in range(1,5):          #爬取前五页信息
    
url = base_url + str(page_number)
    get_website(url)
    

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 习题1: 加分题:多打印一行答:Print (‘\n’) 加分题:在一行的起始位置放一个 ‘#’符号,它的作用是什...
    infinite昊昊阅读 4,429评论 2 0
  • 1、抓取本地网页解析其中的图片、标题、价格、星级和浏览量 经过查看和分析,每一项都是由一个div包裹 抓取数据的P...
    代码与艺术阅读 4,680评论 1 2
  • 我在你的教室, 坐在你的座位, 感受着你的日常。 讲台上的老师, 投影里的画面, 我在设法 使自己转换角色。 我全...
    墨默天地阅读 2,669评论 0 8
  • 隆隆鞭炮之声,带来悠悠思古之情。今天是新春第一天,大年初一,想起红楼中的元春,这一天正是她的生日,咱们的红楼解读,...
    小金甲阅读 3,150评论 0 0