吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3520|回复: 25
收起左侧

[Python 原创] 薅羊毛赚客吧0818爬虫有奖活动 python 思路与实现

  [复制链接]
zigzag 发表于 2024-4-16 03:59
个人版本python==3.8.6  requests==2.31.0
要点思路:
分析网页结构
如果
urls = [f'http://www.0818tuan.com/list-1-{i}.html' for i in range(0,11)]
改成
urls = [f'http://www.0818tuan.com/list-1-{i}.html' for i in range(0,90)]
爬取的活动会更多一点,时效性会差一点

知识点:
列表是一个有序的集合,可以包含任意类型的元素,并且可以通过索引访问。
字典是一个无序的集合,它存储键值对(key-value pairs),其中键是唯一的,可以用来查找与之相关联的值。
取随机数
正则(难点)
写入文件
[Python] 纯文本查看 复制代码
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#python==3.8.6#requests==2.31.0
#[] 创建了一个空列表(list)。列表是一个有序的集合,可以包含任意类型的元素,并且可以通过索引访问。
#{} 创建了一个空字典(dictionary)。字典是一个无序的集合,它存储键值对(key-value pairs),其中键是唯一的,可以用来查找与之相关联的值。
#取随机数
#写入文件
 
import requests
import re
import csv
# 生成链接列表
urls = [f'http://www.0818tuan.com/list-1-{i}.html' for i in range(0,11)]
# 设置请求头
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36'
}
 
 
matches = []
for url in urls:
    # 发送HTTP GET请求
    response = requests.get(url, headers=headers)
 
    # 确保请求成功
    if response.status_code == 200:
        # 注意:这里的正则表达式需要根据实际的HTML结构进行调整
        matches_temp = re.findall(r'[d\/](\d{7,}).html" target="_blank" title="([\u4e00-\u9fa5].*)" ', response.text)
        matches.extend(matches_temp)  # 将找到的匹配项添加到matches列表中
# 初始化空字典来存储URL和标题的配对
match_dict = {}
# 遍历matches列表构建字典
for match in matches:
    match_id = match[0]
    match_title = match[1]
    url = f"http://www.0818tuan.com/xbhd/{match_id}.html"
    match_dict[url] = match_title
 
with open("爬取结果.csv", 'w', newline='', encoding="GBK",errors='ignore') as f:
    writer = csv.writer(f)
    writer.writerow(['url链接', '标题'])  # 写入表头
    # 遍历字典并写入匹配结果
    for url, title in match_dict.items():
 
         writer.writerow([url, title])

免费评分

参与人数 3吾爱币 +9 热心值 +3 收起 理由
junjia215 + 1 + 1 用心讨论,共获提升!
苏紫方璇 + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
angelabebe + 1 + 1 我很赞同!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

happyxuexi 发表于 2024-4-16 07:48
能实时判断新增的吗?
谢谢分享。
cbypm1984 发表于 2024-4-16 08:12
anning666 发表于 2024-4-16 08:35
tyq2003 发表于 2024-4-16 08:37
谢谢楼主分享,为楼主点赞!
zucker 发表于 2024-4-16 08:53
一会儿就封你ip,意义不大
susong987 发表于 2024-4-16 09:07
这个不错可以学习
milu1123 发表于 2024-4-16 09:11
刚看了一下,代码的思路还可以改进!!
sztoplon 发表于 2024-4-16 09:20
顶贴收藏,学习一下
lianfeng520 发表于 2024-4-16 09:38
学习一下。..
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2025-4-2 01:55

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表