【酱浦菌-爬虫项目】爬取学术堂论文信息

  1. 首先,代码定义了一个名为

```

url

```

的变量,它是一个包含三个网址的集合(或者说是一个集合的字典)。这些网址分别是:

  1. 接下来,设置了一个HTTP请求的头部信息,模拟了一个Chrome浏览器的请求。

  2. 然后,通过`requests.get()`方法,分别发送GET请求到这三个URL,并将响应内容保存在`response`变量中。

  3. 由于网站的编码方式可能不同,这里使用了一些编码转换操作:

  • `response.text.encode('iso-8859-1').decode('gbk')`将响应内容从ISO-8859-1编码转换为GBK编码。
  1. 创建一个`parsel.Selector`对象,用于解析HTML内容。

  2. 从HTML中选择所有满足条件的元素:

  • 使用CSS选择器`'p span[style="font-family: 宋体"]'`,找到所有带有`style`属性值为"font-family: 宋体"的`<span>`元素。

  • 使用XPath表达式`.//text()`,提取这些`<span>`元素内的文本内容。

  1. 遍历每个提取到的文本:
  • 打印文本内容,表示下载成功。

  • 将文本内容追加到名为'pc_biye.text'的文件中(以UTF-8编码保存)。

  1. 最后,完成了对这三个网址的文本下载操作。

完整代码如下:

python 复制代码
import requests
import parsel
import os 
url = {
    'http://www.xueshut.com/lwtimu/127966.html',
    'http://www.xueshut.com/lwtimu/127966_2.html',
    'http://www.xueshut.com/lwtimu/127966_3.html'   
}
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36'
}
for url in url:
    response = requests.get(url=url, headers=headers)
    response_decoded = response.text.encode('iso-8859-1').decode('gbk')
    selector = parsel.Selector(response_decoded)
    text = selector.css('p span[style="font-family: 宋体"]').xpath('.//text()').extract()
    for text in text:
        print(f'{text}下载成功')
        #print("\n")
        with open('pc_biye.text','a',encoding='utf-8') as f:
            f.write(text)

运行效果如下:

相关推荐
小白学大数据11 小时前
构建1688店铺商品数据集:Python爬虫数据采集与格式化实践
开发语言·爬虫·python
AI分享猿12 小时前
免费WAF天花板!雷池WAF护跨境电商:企业级CC攻击防御,Apache无缝适配
爬虫·web安全
雪碧聊技术14 小时前
手刃一个爬虫小案例
爬虫·第一个爬虫案例
野生工程师16 小时前
【Python爬虫基础-1】爬虫开发基础
开发语言·爬虫·python
嫂子的姐夫20 小时前
21-webpack介绍
前端·爬虫·webpack·node.js
Pocker_Spades_A1 天前
Python快速入门专业版(五十四):爬虫基石:HTTP协议全解析(从请求到响应,附Socket模拟请求)
爬虫·python·http
B站计算机毕业设计之家2 天前
Python招聘数据分析可视化系统 Boss直聘数据 selenium爬虫 Flask框架 数据清洗(附源码)✅
爬虫·python·selenium·机器学习·数据分析·flask
傻啦嘿哟2 天前
用Redis实现爬虫URL去重与队列管理:从原理到实战的极简指南
数据库·redis·爬虫
雪碧聊技术2 天前
爬虫是什么?
大数据·爬虫·python·数据分析
小白学大数据3 天前
集成Scrapy与异步库:Scrapy+Playwright自动化爬取动态内容
运维·爬虫·scrapy·自动化