import requests
import csv
from bs4 import BeautifulSoup
url = “https://example.com/news”
response = requests.get(url)
soup = BeautifulSoup(response.text, “html.parser”)
news_list = soup.find_all(“div”, class_=“news-item”)
with open(“news.csv”, “w”, newline=“”) as csvfile:
writer = csv.writer(csvfile)
writer.writerow([“标题”, “摘要”])
for news in news_list:
title = news.find(“h2”).text
summary = news.find(“p”).text
writer.writerow([title, summary])
#### 1.2 API调用
许多网站提供了API接口,通过调用API可以获取特定的数据。Python爬虫可以通过HTTP请求访问API,并使用JSON或XML解析库处理返回的数据。这样可以方便地获取各种数据,如天气预报、股票数据、地理位置等。
案例:使用Python爬虫调用天气API,并显示当前城市的天气信息。
import requests
city = “Beijing”
url = f"https://api.weather.com/weather/now?city={city}&key=API_KEY"
response = requests.get(url)
data = response.json()
weather = data[“weather”]
temperature = data[“temperature”]
humidity = data[“humidity”]
print(f"当前天气:{weather}“)
print(f"当前温度:{temperature}℃”)
print(f"当前湿度:{humidity}%")
### 二、数据清洗与预处理
获取到的数据往往包含大量的噪声和冗余信息,需要进行清洗和预处理,以便后续的分析和建模。Python爬虫提供了强大的文本处理和数据清洗工具,如正则表达式、字符串处理函数和pandas库等,可以将原始数据转换为规范化的格式。
案例:使用Python爬虫爬取的电影评论数据中包含了噪声字符和HTML标签,需要进行清洗和预处理。
import re
import pandas as pd
comments = [“这部电影真的太好了!”, “
这部电影真的太好了!
”, “这部电影烂到爆!”]clean_comments = []
for comment in comments:
clean_comment = re.sub(“<.*?>”, “”, comment) # 去除HTML标签
clean_comment = re.sub(“[^a-zA-Z0-9\u4e00-\u9fa5\s]”, “”, clean_comment) # 去除噪声字符
clean_comments.append(clean_comment)
df = pd.DataFrame(clean_comments, columns=[“评论”])
print(df)
### 三、数据分析与挖掘
Python爬虫可以帮助数据分析师快速获取数据并进行各种统计分析和数据挖掘。借助Python的数据分析库(如NumPy和Pandas)和可视化库(如Matplotlib和Seaborn),可以对数据进行可视化和探索性分析,发现其中隐藏的模式和关联。
案例:使用Python爬虫获取股票数据,并对其进行统计分析和可视化。
import requests
import pandas as pd
import matplotlib.pyplot as plt
symbol = “AAPL”
url = f"https://api.example.com/stock/{symbol}/history"
response = requests.get(url)
data = response.json()
df = pd.DataFrame(data)
df[“date”] = pd.to_datetime(df[“date”])
df.set_index(“date”, inplace=True)
df.plot(y=“close”, kind=“line”)
plt.xlabel(“Date”)
plt.ylabel(“Close Price”)
plt.title(f"{symbol} Stock Price History")
plt.show()
### 四、机器学习与人工智能
文末有福利领取哦~
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
👉**一、Python所有方向的学习路线**
Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。![img](https://img-blog.csdnimg.cn/c67c0f87cf9343879a1278dfb067f802.png)
👉**二、Python必备开发工具**
![img](https://img-blog.csdnimg.cn/757ca3f717df4825b7d90a11cad93bc7.png)
👉**三、Python视频合集**
观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
![img](https://img-blog.csdnimg.cn/31066dd7f1d245159f21623d9efafa68.png)
👉 **四、实战案例**
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。**(文末领读者福利)**
![img](https://img-blog.csdnimg.cn/e78afb3dcb8e4da3bae5b6ffb9c07ec7.png)
👉**五、Python练习题**
检查学习结果。
![img](https://img-blog.csdnimg.cn/280da06969e54cf180f4904270636b8e.png)
👉**六、面试资料**
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
![img](https://img-blog.csdnimg.cn/a9d7c35e6919437a988883d84dcc5e58.png)
![img](https://img-blog.csdnimg.cn/5db8141418d544d3a8e9da4805b1a3f9.png)
👉因篇幅有限,仅展示部分资料,这份完整版的Python全套学习资料已经上传
**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**[需要这份系统化学习资料的朋友,可以戳这里无偿获取](https://bbs.csdn.net/topics/618317507)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**