⽤mac的python写⽹络爬⾍_mac下如何简单粗暴使⽤Python
进⾏⽹络爬⾍(1)
⾸先推荐⼏个 必须要掌握的类库
Requests: HTTP for Humans
它是以这么⼀句话介绍⾃⼰的,为⼈类使⽤的HTTP库
Beautifulsoup
⽤Beautiful Soup解析⽹站源代码 代替正则
开发环境:Mac
IDE:PyCharm (个⼈感觉⾮常好⽤)
游览器:Safari
我们所需要的 就是 红框⾥这些⽂字 其余乱七⼋糟的⼴告 我们压根也不⽤ 怎么办呢? Safari游览器中 右键点击 检查元素
好了 所需的内容 就在这⾥⾯ 但是这个只是个标题 内容 在点击进去的详情页 ,我们随便打开⼀个
那么我们⾸要的⽬的 就是要到这个后缀列表数据库课程设计答辩问题及答案
开始编写代码时 我们需要 安装所需的类库 ⽹上很多教程 都是从命令⾏⾥安装 倒是也可以 但是⽤Pycharm⾥⾯有更⽅便的办法.
我使⽤的IDE是 PyCharm 安装request BeautifulSoup⽅法如下 :点击 Pycharm->Preferences
点击 Install Package 就可以安装了
好了 现在开始进⼊正题
选项卡制作
我们所需的href 都在 content-left 这下⾯ 那我们就解析他
解释⼀下 这个模拟请求 是我⽤charles抓包得到的 你可以换成 你对应的请求 ⾃⼰下载⼀个charles搞定 就⾏
通过解析 div 标签 content-left下⾯的 article 得到 ⼀个列表数组 也就是我们所需的⽂章详情链接
按照上⾯代码 执⾏后 :
乱世三义电视剧免费观看达达兔我们得到了 每个列表 所对应的⽂章详情链接
接下来 我们 再抓去 每个 详情的链接
通过 观察得知 ⽂章在div class="content" ⾥⾯ 作者 在href⾥⾯的 继续爬
抓包的数据 如上
这样 通过⼀个简单的抓包教程 我们就完成了 虽然没有太多技术含量 献给和我⼀样 刚开始学习爬⾍的朋友
colormap jet什么意思完整代码如下
import requests
plc需要考什么证书from bs4 import BeautifulSouppython安装教程mac
import html5lib
import pymysql
def getRequestUrl():
#模拟请求
headers = {"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/11.1.2 Safari/605.1.15"}
response = ("www.qiushibaike/text",headers=headers)
soup = t, "html5lib") #解析内容
listSoup = soup.find("div",id="content-left") #到列表listSoup
article_list = listSoup.find_all("div", class_="article") #到⽂章列表
for list in article_list:
#获得⽂章详情链接
detailUrl = list.find(class_="contentHerf")["href"]
getDetailUrl(detailUrl)
def getDetailUrl(url):
#得到⽂章详情
detailUrl = ("www.qiushibaike%s"%url)
print(detailUrl)
headers = {
"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/605.1.15 (KHTML, like Gecko)
Version/11.1.2 Safari/605.1.15"}
response = (detailUrl,headers=headers)
#result = t.decode("utf-8") #处理乱码
soup = t, "html5lib")
author = soup.find("a",class_="side-left-userinfo").find("img")["alt"] #获得作者
print("作者:%s"%author)
content = soup.find("div",class_="content").get_text() #获得⽂章
print("⽂章:%s"%content)
if __name__ =="__main__":
getRequestUrl()

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。