解读:Python 三国人物数据快速采集极简方法汇总
优采云 发布时间: 2022-10-15 14:16解读:Python 三国人物数据快速采集极简方法汇总
作为数据分析师而不是开发工程师,你需要掌握爬虫的必要知识,才能获取所需的数据。如果您需要更多基于爬虫工程师的专业内容,请浏览“Scrapy爬虫框架”部分。
以最基础的《三国志13》人物资料采集为例,了解和掌握基本的爬取技巧和资料整理技巧。
整套自学课程应用的数据是《三国志》和《三国无双》系列游戏的内容。
数据目标
将军的看法 - 三国志13指南 Wiki
我们想在这个页面上获取所有的一般数据信息。
使用爬虫请求有几种基本方法
"""例"""
from urllib import request
response = request.urlopen(r'https://sangokushi13wiki.wiki.fc2.com/wiki/%E6%AD%A6%E5%B0%86%E4%B8%80%E8%A6%A7')
#返回状态 200证明访问成功
print("返回状态码: "+str(response.status))
返回状态码: 200
请求静态页面数据获取
静态网页的URL形式通常以.htm、.html、.shtml、.xml等为后缀,一般来说是最简单的HTML页面,服务端和客户端是一样的。在 HTML 格式的网页上还可以出现各种动态效果,例如 GIF 格式的*敏*感*词*、FLASH、滚动字母等,这些动态效果只是视觉上的。
我们本地爬取的目标是静态页面。
使用request()封装请求,然后通过urlopen()获取页面,俗称伪装。让服务器知道我们正在通过浏览器访问页面,有些情况下可能会直接被杀掉。
# 加载第三方使用插件和基础配置
import requests
from bs4 import BeautifulSoup
import pandas as pd
import random
import warnings
warnings.filterwarnings("ignore")
# 浏览器 header
USER_AGENT_LIST = [
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36",
"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/22.0.1207.1 Safari/537.1",
"Mozilla/5.0 (X11; CrOS i686 2268.111.0) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.57 Safari/536.11",
<p>
]
# 使用本地代理 可以使用也可以不使用
proxies = {
"http": "http://127.0.0.1:19180",
"https": "https://127.0.0.1:19180"
}
headers = {
"User-Agent":random.choice(USER_AGENT_LIST),
}
# https://sangokushi13wiki.wiki.fc2.com/wiki/武将一覧
url = "https://sangokushi13wiki.wiki.fc2.com/wiki/%E6%AD%A6%E5%B0%86%E4%B8%80%E8%A6%A7"
html = requests.get(url,headers=headers,proxies=proxies,verify=False)
soup = BeautifulSoup(html.text,"lxml")
soup
</p>
请求动态页面数据获取
动态网页后缀有.asp、.jsp、.php、.perl、.cgi等形式。动态网页与网页上的各种*敏*感*词*、滚动字幕等视觉动态效果没有直接关系。动态网页也可以是纯文本内容或收录各种*敏*感*词*。这些只是网页具体内容的表现形式。,无论网页是否具有动态效果,通过动态网站技术生成的网页都称为动态网页。动态网站也可以采用动静结合的原则。适合在使用动态网页的地方使用动态网页。如果需要使用静态网页,可以考虑使用静态网页来实现。在同一个 网站
import requests
from bs4 import BeautifulSoup
url = "http://news.cqcoal.com/blank/nl.jsp?tid=238"
html = requests.get(url)
soup = BeautifulSoup(html.text,"lxml")
soup.text
爬取网页,看不到任何信息,证明是动态网页。正确的爬取方法如下。
import urllib
import urllib.request
import requests
url = "http://news.cqcoal.com/manage/newsaction.do?method:webListPageNewsArchivesByTypeid"
post_param = {'pageNum':'1',\
'pageSize':'20',\
'jsonStr':'{"typeid":"238"}'}
return_data = requests.post(url,data =post_param)
content=return_data.text
content
总结一下:如果页面内容发生变化,URL也会发生变化。基本上,它是一个静态网页,反之亦然是一个动态网页。
请求异常处理
from urllib.request import Request, urlopen
from urllib.error import URLError, HTTPError
req = Request("http://www.111cn.net/")
try:
response = urlopen(req)
except HTTPError as e:
print('服务器无法满足请求.')
print('错误代码: ', e.code)
except URLError as e:
print('不能访问服务器.')
print('原因: ', e.reason)
else:
print("OK!")
print(response.read().decode("utf8"))
不能访问服务器.
原因: [Errno 11001] getaddrinfo failed
解读:王通:SEO算法演变与破解
我喜欢把复杂的事情简单化,所以我只分享最重要的四点:
1. 内容质量控制
2.关键词的布局
3.链接结构优化
4.浏览轨迹优化
2-1。内容质量控制
内容质量控制始终是搜索引擎算法的首要目标。什么样的内容会吸引搜索引擎?
答:自然会吸引用户到搜索引擎!从SEO的角度来看,网站的内容和编辑如何规划?
1. 原创 内容的性质:
搜索引擎最喜欢原创 内容,但是搜索引擎如何判断原创 内容呢?简单分析,结果自然会有。
A. 如果你的 网站 有内容,而其他的 网站 没有,那么它就是你的 原创。
B、你的网站有一些内容,其他的网站也有,那么搜索引擎需要分析,可以从收录的时间开始,<中的链接文章 等,只做分析判断。
在这方面,谷歌比百度要好,而百度还是有网站权重高的优势。
2、内容格式丰富:
纯文本的内容肯定不如图文出名,同时非网页格式的文档在搜索结果的排名上也有优势。比如无论你在谷歌还是百度搜索:SEO期刊都是直接排在PDF文档前面的。
3、内容转发次数:
百度推出了“百度分享”功能,直接统计一个网页的分享次数,在一定程度上可以作为一个网页热度的重要因素。
4. 对网站内容评分:
我们在谷歌上搜索的时候,经常会发现谷歌已经抓取了用户最想看的所有内容,甚至“星评”都被索引了。
对排名非常不利的内容策略:
1. 网站中有大量重复内容
2、网站的内容是纯采集
3.内容更新频率波动太大
2-2。关键词 的布局
一个网页应该在6个地方合理出现关键词,这样关键词在网页中出现的频率就会非常自然合理。这6个地方是:
1. 标题
2.元
3. H1
4.乙
5. 替代
6.链接
2-3。链接结构优化
搜索引擎蜘蛛对网页的爬取总是依赖于超链接的爬取,所以链接结构优化主要分为两部分:
1.建立外部链接
2.内链优化
2-4。浏览轨迹优化
任何关注百度的人都会发现,百度的广告越来越聪明,尤其是百度联盟广告。它不再根据网页内容匹配广告,而是根据用户浏览行为展示吸引用户的广告。这说明了一个重要的问题,百度要记录和分析用户的浏览轨迹。
然后,从浏览行为分析的角度,也可以判断网页的热度。
例如:
1. 跳出率
2.浏览时间
3. 浏览深度
4.点击率
5. 其他行为
是可以判断的。上一段我做了一个测试,后来证明这方面确实对排名有影响。
从2007年到2016年,我讲了10年的SEO,共进行了100场培训。上次培训的价格是每人27800,然后我就停了这门课。
最近,很多人还是想学SEO。为了响应同学们的要求,我特地开设了【SEO赚钱培训微信班】
1. SEO算法破解:
教你快速分析任何搜索引擎算法的思路,快速破解算法。
2.高级SEO策略
教大家一起使用搜索引擎排名的算法规则,整合创意策略做SEO,从而实现长期排名。
3.如何通过SEO赚钱
学习方法的目的是为了赚钱,所以同时我会传授三种利用SEO快速赚钱的方法和思路,并提供超值的模板。
如果按照之前的规则,新的阶段应该是28,800
不过为了让更多人学习,只收5000元/人
付款后请联系我的助理:tongwang009 将立即赠送以下珍贵礼物:
1.《SEO赚钱秘籍》电子书
2.《手机网站SEO教程》电子书
3.《网站诊断分析报告》模板
4.《网站优化执行计划》模板
价值巨大,不用多说。课程结束后,微信社区将提供长期支持!
课程时间:国庆期间抽出1~2晚在微信群上课,让讲课记录长期保存,讲课讲课不受时空限制。
学习绝活,关注童哥