百度网页关键字抓取(毕设新学小知识学习之Python爬虫)

优采云 发布时间: 2022-01-12 15:04

  百度网页关键字抓取(毕设新学小知识学习之Python爬虫)

  完成新校小知识

  最近学了Python爬虫,因为mooc的北京理工大学松田老师是爬百度的,所以以百度为例~~

  一、 前期准备

  在cmd中安装requests和urllib头文件。

  直接使用命令

  pip install requests

  pip install urllib

  结果表明安装成功的前期工作已经结束

  如果提示安装出错,请自行百度。

  二、开始写代码

  import requests

import urllib

url1 = 'https://baike.baidu.com/item/'

key_word = (input())

lens = len(key_word)

key_word = urllib.parse.quote(key_word,encoding = 'utf-8', errors = 'replace')

headers = {

# 'wd':key_word,

# 'Host': 'https://baike.baidu.com/item/',

"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36"

}

html = requests.get(url1+key_word,headers = headers)

print(url1+key_word)# 验证链接是否正确

html.encoding = html.apparent_encoding

fo = open("F://毕设//1.txt",'wb')# 爬取百度百科的内容保存到本地中

fo.write((html.content))

print("写入文件成功")

  注意

  key_word = urllib.parse.quote(key_word,encoding = 'utf-8', errors = 'replace')

  这行代码的功能和说明参考我的其他文章链接

  有一定爬虫基础的朋友应该很容易看懂这几行代码。

  简单的说:

  1、因为现在爬虫这么多,每个网站也都加入了相应的反爬虫机制,所以爬的时候一定要模拟真人的操作

  做。在requests.get中添加请求头(headers)可以很好的绕过服务器的检查。

  2、加一句html.encoding = html.apparent_encoding就是把页面转换成我们可以理解的方式

  模式。

  3、最后两行收录fo的代码比较好理解,把我们爬取的百科全书的内容保存在txt文件中,这里我用

  wb 覆盖写入模式。如果没有1.txt文件,它会自己创建一个,避免了这个文件不存在会报错的尴尬情况。

  面条。

  最后提示文件写入成功,再次验证即可!

  

  我们一般都是用百度百科来找张子枫,这个丫子就属于这个人。

  

  

  让我们尝试运行我们自己的程序。

  

  运行正常,提示我们爬取网页成功,然后查看保存到本地txt的内容。

  

  

  任意截取两个文件的内容,凑字数,你不会在心里骂我吧?(狗头救命)

  把txt后缀改成html,然后再打开看看是什么样子的。

  

  查看网页链接,确保将其保存到本地修改后缀打开的网页中,而不是再次复制图片。

  之后

  这只是一个初学者写的代码,有很多缺点:效率低,代码不合逻辑,没有写进函数,代码

  不漂亮。希望看到这个文章的评论,可以分享你的建议,谢谢。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线