首页 > 其他分享 > 爬取 万年历 xml 操作

爬取 万年历 xml 操作

时间:2023-05-24 17:15:30浏览次数:37  
标签:xml 万年历 text str1 爬取 headers r4str print find

import datetime
import requests
import xml.etree.ElementTree as ET

kw ={ 'wd':'python教程'}
url1 ='https://rili.ximizi.com/jinrijishi.php'
url2 ='https://www.xingzuo5.net/calendar/2025/2025-12-22.html'

headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36' } # 定义headers
# 构建字典
tdate = datetime.date.today()
# tyear = str(tdate.year)
# tmon = str(tdate.month)
# tday =str(tdate.day)
# sday =tyear+'-'+tmon+'-'+tday
# url ='https://www.xingzuo5.net/calendar'
# url2 =url+"/"+tyear+"/"+sday+'.html'
# 稳妥方案
# cooklist = temp.split('; ')
# cookies = {}
# for cookie in cooklist:
# cookies[cookie.split('=')[0]] = cookie.split('=')[-1]

#print(cookies)
# 字典推导式
# cookies_dic = cookies[cookie.split('=')[0]]:cookie.split('=')[-1] for cookie in cooklist.split('; ')
response = requests.get(url1)
res = requests.request('get',url1,headers=headers)
#r1 = requests.get('http://www.baidu.com/s?',headers=headers,params=kw,cookies=cookies, timeout=3) # headers 指定, 设置参数

r2 = requests.get(url1)
r4 = requests.get(url1)
restr= r2.text

response.encoding ='utf-8'
r4.encoding ='utf-8'
r4str =r4.text
# print(response.text)
# print(response.content.decode())
# print(res.content.decode())
#print(r1.url.encode())

# print(restr[110:24542])

nlindex = r4str.find('农历日期')
gzrqindex = r4str.find('干支')
y1index = r4str.find('sc2title') # 第一个时辰
j1index = r4str.find('时忌')
yj2y = r4str[y1index+10:y1index+30]
yendindex =yj2y.find('/p')
cindex = r4str.find('冲')

j1str =r4str[j1index+14:cindex-15]


ystr = yj2y
nlrq = r4str[nlindex+12:nlindex+21]
gzrq =r4str[gzrqindex+10:gzrqindex+21]
y1str ='宜:'
j2str ='忌:'

print('农历日期:'+nlrq)
print('干支日期:'+gzrq)

tree = ET.parse('2.xml')

root = tree.getroot()
blstr =root.find('today')
blstr.text = str(tdate)
blstr =root.find('nl')
blstr.text = nlrq
blstr =root.find('gz')
blstr.text = gzrq
blstr =root.find('y')
blstr.text = y1str
blstr =root.find('j')
blstr.text = j2str
tree.write('2.xml')

print('-------------------------------------------')
#print(r4str)
print('-------------------------------------------')
scstr = r4str.split('sc2title')
i =1

for str1 in scstr:
i =i+1
if i>2 and i<8:

print('-------------------') #0-8 点
tstart =str1[6:7]
tend =str1[14:15]
name = str1[2:5]
allname =str1[2:22]


print(allname)
if i ==8: #9至10点
print('-------------------')
name =str1[2:5]
allname=str1[2:23]
print(name,allname)


if i>8: # 11-24 点
print('-------------------')
allname =str1[2:24]
name =str1[2:5]


print(allname)
if i>2 :
for sh in root.findall('sh'):
shat = sh.findall('sharry')
ename =shat[i-3].find('name')
aname =shat[i-3].find('allname')

ename.text =name
aname.text=allname
tree.write('2.xml')



# print(r4str)
# print(response.headers)
# print('-------')
# print(r1.content.decode())
# print(response.cookies.values())
# print(response.headers)

if __name__== '__main__':
print('开始:')



标签:xml,万年历,text,str1,爬取,headers,r4str,print,find
From: https://www.cnblogs.com/lionmxs/p/17428897.html

相关文章

  • odoo关于 xml <template>标签 的继承修改方法
    写法同之前的视图继承比较相似,话不多说,直接上案例比如我需在在下列报表添加barcode或者其他字段 第一步先找到当前的视图位置,具体查找方法以后再讲。最后找到视图 这里面的id还有这个xml文件所在的包会在后面用到以上信息确认完毕之后,就可以直接写继承了自定义......
  • 让java目录能导出.xml配置文件
    在maven中配置<!--插件配置--><build><resources><resource><directory>src/main/java</directory><!--包含了src/main/java目录下的所有xml资源配置文件--><includes......
  • XML解析之DOM解析
    XML解析之DOM解析XML结构是一种树型结构,处理步骤都差不多,Java己经将它们封装成了现成的类库。目前流行的解析方法有三种,分别为DOM、SAX和DOM4j。本文将讲解DOM解析。DOM(DocumentObjectModel,文档对象模型)是W3C组织推荐的处理XML的一种方式。它是一种基于对象的API,......
  • 编写javaweb用到的基本依赖,mybatis-config.xml代码,SqlSessionFactoryUtils.java
    这篇文章仅仅作为记录,供以后复制粘贴使用pom.xml<dependencies><!--Servlet--><dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><version>3.1.0</vers......
  • 原生IP是什么意思?对网络爬取有什么帮助?
    IP地址谁都懂,可是原生IP就未必了。2023年,会挂梯子真的已经不算啥稀奇事,但是通常免费梯子提供的IP地址都是共享的,早就不知道转经了多少手,很容易被系统判定为代理IP从而受限。而原生IP是一手的、纯净的,可谓是“出淤泥而不染”,它对网络爬取有莫大作用,用了原生IP,就好比变身成为鼓上蚤时......
  • Python爬虫以及数据可视化分析之某站热搜排行榜信息爬取分析
    目录前言一,确定目标二,发送请求三,解析数据四,保存数据pyecharts进行可视化“某站”数据排名前10视频类型“某站”标题标签可视化“某站”喜欢视频分类概况总结前言本项目将会对“某站”热搜排行的数据进行网页信息爬取以及数据可视化分析本教程仅供学习参考!首先,准备好相关库requ......
  • 日本原生IP对于日本网站爬取的作用
    现在拓展国外业务非常热门,而日本作为隔壁“富得早”的邻居,坐拥了庞大的市场,自然而然受到了我国企业家的关注。而秉持着“不打无准备的仗”这一原则,大多数国内企业进军日本市场之前,都会用各种方式获取日本市场的各种讯息。而日本原生IP就是获得情报的保障。下面我们来聊一聊日本原生......
  • python随机爬取五个电影演员一生生涯中出演的电影名称
    为了随机爬取电影演员的电影,需要使用Python中的网络爬虫技术和相关的第三方库,如requests和BeautifulSoup。以下是一个简单的示例程序:importrandomimportrequestsfrombs4importBeautifulSoup#输入要爬取的演员的姓名actor_name=input('请输入要爬取的演员的姓名:')#......
  • python解析XML
    xml简介XML全称ExtensibleMarkupLanguage,中文译为可扩展标记语言。XML之前有两个先行者:SGML和HTML,率先登场的是SGML,尽管它功能强大,但文档结构复杂,既不容易学也不易于使用,因此几个主要的浏览器厂商均拒绝支持SGML,这些因素限制了SGML在网上的传播性;1989年HTML登场,它继......
  • web.xml
    1<?xmlversion="1.0"encoding="UTF-8"?>2<web-appxmlns="http://xmlns.jcp.org/xml/ns/javaee"3xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"4xsi:schemaLocation="http:/......