spark学习进度6-Python爬取数据的四个简单实例

今天本来想把昨天安装的intellij配置好,但是一直显示没有网络,网上查了相关资料也没有查出来解决办法。

然后暂停了intellij的配置,开始做了几个Python爬取简单数据的实例,先做了几个最简单的,以后再加大难度(用idle编码):

(1)京东商品页面爬取:

链接:https://item.jd.com/2967929.html

代码解析:

首先r是一个response对象;

r.status_code返回一个值,如果是200的话则正常,如果时候503的话,则抛出异常,调用该方法的目的是查看返回的response对象是否正确;

r.encoding是返回编码信息,如果编码为gbk则表示这个网站提供了页面信息的相关编码;

(2)亚马逊商品页面的爬取:

r.status_code返回值为503,说明请求没有得到正确的答复,这时,查看我们访问的http的头可知我们告诉了亚马逊网站我们是用Python的requests库来访问的,并且亚马逊拒绝了爬虫的访问,所以,这时我们更改了我们的头部信息,让爬虫模拟一个浏览器来访问,把user-agent更改为Mozolla/5.0就可以成功的访问了。

(3)百度搜索关键词提交:

百度对关键词的搜索提供了接口:http://www.baidu.com/s?wd=keyword。所以这时利用了params,将键字对输入进去,但是这里当我查询url时,并没有正常显示,百度利用安全认证,我把http的头部更改为Mozilla/5.0也不起作用,还未解决。

(4)网络图片的爬取和存储:

只适用于最简单的图片爬取,如https://gss2.bdstatic.com/fo3dSag_xI4khGkpoWK1HF6hhy/baike/c0%3Dbaike80%2C5%2C5%2C80%2C26/sign=c9162213c4fcc3cea0cdc161f32cbded/279759ee3d6d55fb3cfdd81761224f4a20a4ddcc.jpg。

结尾是图片文件的形式,r.content是返回内容的二进制形式,所以用write方法写入文件中,形成jpg文件。open函数中的‘wb’是指打开文件的模式,相关模式含义如下表:

原文地址:https://www.cnblogs.com/123456www/p/12271607.html

时间: 2024-10-07 10:26:13

spark学习进度6-Python爬取数据的四个简单实例的相关文章

python爬取数据被限制?一招教你伪造反爬技术!

1.Headers限制 这应该是最常见的,最基本的反爬虫手段,主要是初步判断你是否是真实的浏览器在操作. 这个一般很好解决,把浏览器中的Headers信息复制上去就OK了. 值得注意的是,很多网站只需要userAgent信息就可以通过,但是有的网站还需要验证一些其他的信息,比如知乎,有一些页面还需要 authorization 的信息.所以需要加哪些Headers,还需要尝试,可能还需要Referer.Accept-encoding等信息. 2.IP限制 限制IP也是很多网站反爬虫的初衷,有些人

python爬取数据并保存到数据库中(第一次练手完整代码)

1.首先,下载需要的模块requests, BeautifulSoup, datetime, pymysql(注意,因为我用的python3.7,不支持mysqldb了),具体的下载方法有pip下载,或者使用Anaconda版本python的童鞋可以使用conda下载. 2.创建conndb,py,包含数据库的连接断开,增删改查等操作: #!/usr/bin/env python # -*- coding:utf-8 -*- import pymysql def conn_db(): # 连接数

【学习笔记】python爬取百度真实url

今天跑个脚本需要一堆测试的url,,,挨个找复制粘贴肯定不是程序员的风格,so,还是写个脚本吧. 环境:python2.7 编辑器:sublime text 3 一.分析一下 首先非常感谢百度大佬的url分类非常整齐,都在一个类下 即c-showurl,所以只要根据css爬取链接就可以,利用beautifulsoup即可实现,代码如下:         soup = BeautifulSoup(content,'html.parser')         urls = soup.find_all

selenium+python爬取数据跳转网页

项目要做一个四个层级栏的数据抓取,而且点击查询后数据会在新跳出的网页. 源码如下 注释解释 from selenium import webdriver import selenium #from time import sleep as sp url='http://202.127.42.157/moazzys/nongqing.aspx' site=webdriver.Chrome() site.get(url) #data={} mainhandle=site.current_window

python爬取数据保存入库

import urllib2 import re import MySQLdb class LatestTest: #初始化 def __init__(self): self.url="https://toutiao.io/latest" self.UserAgent='Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.97 Safari/537.36'

Python 爬取数据入库mysql

1 # -*- enconding:etf-8 -*- 2 import pymysql 3 import os 4 import time 5 import re 6 serveraddr="localhost" 7 user="root" 8 password="123456" 9 databaseName="test" 10 filename="./data/UNCL.csv" 11 12 def c

python爬取网页数据

python时间戳 将时间戳转为日期 #!/usr/bin/python # -*- coding: UTF-8 -*- # 引入time模块 import time #时间戳 timeStamp = 1581004800 timeArray = time.localtime(timeStamp) #转为年-月-日形式 otherStyleTime = time.strftime("%Y-%m-%d ", timeArray) print(otherStyleTime) python爬

spark学习进度7-Python爬取大学排名实例

利用pc编写python爬取大学排名的数据,如图: import requests from bs4 import BeautifulSoup import bs4 def getHTMLText(url): try: r = requests.get(url, timeout=30) r.raise_for_status() r.encoding = r.apparent_encoding return r.text except: return "" def fillUnivLis

python爬取B站千万级数据,发现了这些热门UP主的秘密!

Python(发音:英[?pa?θ?n],美[?pa?θɑ:n]),是一种面向对象.直译式电脑编程语言,也是一种功能强大的通用型语言,已经具有近二十年的发展历史,成熟且稳定.它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务.它的语法非常简捷和清晰,与其它大多数程序设计语言不一样,它使用缩进来定义语句. Python支持命令式程序设计.面向对象程序设计.函数式编程.面向切面编程.泛型编程多种编程范式.与Scheme.Ruby.Perl.Tcl等动态语言一样,Python具备垃圾回收