1 爬取的内容
根据需要美元,英镑,以及欧元对人民币的汇率,网站比较简单。分为三个网站,地址如下,获取当日页面里的数据,没有太多复杂的解析。三个网站的规则是一样的,里面的解析方法也和步骤也是相同的。
欧元对人民币
英镑对人民币
美元对人民币
1.1 爬取的界面
网页右键点击,选择检查,查看网页代码,找到标题和对应数据所在的位置,下面就进行相关数据的获取
2 爬取的过程
2.1 导入需要的包
a0_mysql是我上一个文章里, 爬虫2_python连接mysql数据库代码,主要是连接数据库,将获取到的数据直接导入到数据库里。
# coding: utf-8
from pathlib import Path
import os
import pandas as pd
import requests
from bs4 import BeautifulSoup
import warnings
warnings.filterwarnings('ignore')
import os
from a0_mysql import del_sql,get_sql_data,to_sql
# 可以自定义代理,一般本地使用就没有用到代理,如果是一些工作内容或者其他内网需要开通,会需要个代理。
proxies = {
'http': "http://代理地址", 'https': 'https://代理地址'}
2.2 获取网页数据
'''
输入:
url: 网页地址
headers: 一般的头部信息
proxn: 是否使用代理,如果是true,则使用代理
输出: 如1.1中的表格里的数据
'''
def get_data(url, headers , proxn):
# 是否使用代理
if proxn =='true':
req = requests.get(url=url, headers=headers, proxies=proxies)
else:
req = requests.get(url=url, headers=headers)
soup = BeautifulSoup(req.text, 'lxml')
# 在检查中找到数据存放在 该class value 下
body = soup.find_all(class_='genTbl closedTbl historicalTbl')