Python探索之爬取电商售卖信息代码示例


Posted in Python onOctober 27, 2017

网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本。

下面有一个示例代码,分享给大家:

#! /usr/bin/env python

#
encoding = 'utf-8'#
Filename: spider_58center_sth.py
from bs4
import BeautifulSoup
import time
import requests
url_58 = 'http://nj.58.com/?PGTID=0d000000-0000-0c5c-ffba-71f8f3f7039e&ClickID=1'
''
'
用于爬取电商售卖信息: 例为58同城电脑售卖信息 ''
'
def get_url_list(url):
  web_data = requests.get(url)
soup = BeautifulSoup(web_data.text, 'lxml')
url = soup.select('td.t > a[class="t"]')
url_list = ''
for link in url:
  link_n = link.get('href')
if 'zhuanzhuan' in link_n:
  pass
else :
  if 'jump' in link_n:
  pass
else :
  url_list = url_list + '\n' + link_n
print('url_list: %s' % url_list)
return url_list# 分类获取目标信息
def get_url_info():
  url_list = get_url_list(url_58)
for url in url_list.split():
  time.sleep(1)
web_datas = requests.get(url)
soup = BeautifulSoup(web_datas.text, 'lxml')
type = soup.select('#head > div.breadCrumb.f12 > span:nth-of-type(3) > a')
title = soup.select(' div.col_sub.mainTitle > h1')
date = soup.select('li.time')
price = soup.select('div.person_add_top.no_ident_top > div.per_ad_left > div.col_sub.summary > ul > '
  'li:nth-of-type(1) > div.su_con > span.price.c_f50')
fineness = soup.select('div.col_sub.summary > u1 > li:nth-of-type(2) > div.su_con > span')
area = soup.select('div.col_sub.summary > u1 > li:nth-of-type(3) > div.su_con > span')
for typei, titlei, datei, pricei, finenessi, areai in zip(type, title, date, price, fineness, area): #做字典
data = {
  'type': typei.get_text(),
  'title': titlei.get_text(),
  'date': datei.get_text(),
  'price': pricei.get_text(),
  'fineness': (finenessi.get_text()).strip(),
  'area': list(areai.stripped_strings)
}
print(data)
get_url_info()

爬取商城商品售卖信息

总结

以上就是本文关于Python探索之爬取电商售卖信息代码示例的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:Python探索之自定义实现线程池、Python探索之ModelForm代码详解等,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
Python字符串格式化的方法(两种)
Sep 19 Python
python thrift搭建服务端和客户端测试程序
Jan 17 Python
利用Python实现在同一网络中的本地文件共享方法
Jun 04 Python
python读取Excel实例详解
Aug 17 Python
Python打开文件,将list、numpy数组内容写入txt文件中的方法
Oct 26 Python
Python 实现取多维数组第n维的前几位
Nov 26 Python
pandas dataframe 中的explode函数用法详解
May 18 Python
什么是Python变量作用域
Jun 03 Python
Python项目跨域问题解决方案
Jun 22 Python
python中pyplot基础图标函数整理
Nov 10 Python
五分钟学会怎么用Pygame做一个简单的贪吃蛇
Jan 06 Python
python 三种方法提取pdf中的图片
Feb 07 Python
Python 列表理解及使用方法
Oct 27 #Python
Python算法之求n个节点不同二叉树个数
Oct 27 #Python
Python探索之自定义实现线程池
Oct 27 #Python
python音频处理用到的操作的示例代码
Oct 27 #Python
彻底理解Python list切片原理
Oct 27 #Python
Python在不同目录下导入模块的实现方法
Oct 27 #Python
Django视图之ORM数据库查询操作API的实例
Oct 27 #Python
You might like
php date与gmdate的获取日期的区别
2010/02/08 PHP
PHP设计模式之代理模式的深入解析
2013/06/13 PHP
显示youtube视频缩略图和Vimeo视频缩略图代码分享
2014/02/13 PHP
利用switch语句进行多选一判断的实例代码
2016/11/14 PHP
Laravel中log无法写入问题的解决
2017/06/17 PHP
json 实例详细说明教程
2009/10/31 Javascript
Prototype源码浅析 String部分(二)
2012/01/16 Javascript
jQuery简单实现QQ空间点赞已经取消点赞
2015/04/02 Javascript
javascript制作照片墙及制作过程中出现的问题
2016/04/04 Javascript
使用Promise解决多层异步调用的简单学习心得
2016/05/17 Javascript
基于bootstrap-datetimepicker.js不支持IE8的快速解决方法
2016/11/07 Javascript
JS基于for语句编写的九九乘法表示例
2018/01/04 Javascript
原生JS实现的多个彩色小球跟随鼠标移动动画效果示例
2018/02/01 Javascript
谈谈为什么你的 JavaScript 代码如此冗长
2019/01/30 Javascript
Vue基于vuex、axios拦截器实现loading效果及axios的安装配置
2019/04/26 Javascript
js事件触发操作实例分析
2019/06/21 Javascript
vue控制多行文字展开收起的实现示例
2019/10/11 Javascript
vue@cli3项目模板怎么使用public目录下的静态文件
2020/07/07 Javascript
[01:40]2014DOTA2国际邀请赛 三冰SOLO赛后采访恶搞
2014/07/09 DOTA
Python语言实现将图片转化为html页面
2017/12/06 Python
python 文件查找及内容匹配方法
2018/10/25 Python
Pytorch 计算误判率,计算准确率,计算召回率的例子
2020/01/18 Python
Python 去除字符串中指定字符串
2020/03/05 Python
使用PyCharm安装pytest及requests的问题
2020/07/31 Python
XD健身器材:Kevlar球、Crossfit健身球
2019/03/26 全球购物
碧欧泉Biotherm加拿大官方网站:法国高端护肤品牌
2019/10/18 全球购物
儿科主治医生个人求职信
2013/09/23 职场文书
历史系毕业生自荐信
2013/10/28 职场文书
幼儿运动会邀请函
2014/01/17 职场文书
学习焦裕禄精神践行三严三实心得体会
2014/10/13 职场文书
逃课检讨书怎么写
2015/01/01 职场文书
2015年校务公开工作总结
2015/05/26 职场文书
签证工作证明模板
2015/06/15 职场文书
小学大队干部竞选稿
2015/11/20 职场文书
Opencv中cv2.floodFill算法的使用
2021/06/18 Python
关于SpringBoot 使用 Redis 分布式锁解决并发问题
2021/11/17 Redis