import os import re import csv csv_file = open('CBG.csv', 'w', newline='', encoding='utf-8') csv_writer = csv.writer(csv_file) path = "./lab6/" for file in os.listdir(path): filename = str(file) match = re.search(r'\d{10}[-_]?[\u4e00-\u9fa5]{2,3}', filename) match_id = match.group(0)[0:10] match_name = re.search(r'[\u4e00-\u9fa5]{2,3}', match.group(0)) csv_writer.writerow([match_name.group(0), match_id]) csv_file.close()
时间: 2023-11-08 07:03:58 浏览: 173
这段代码可能会出现两个问题:
1. 缩进问题:Python对于代码的缩进非常敏感,因此如果代码中出现了缩进错误,就会报IndentationError错误。请确保每一行代码的缩进级别正确。
2. 文件路径问题:如果指定的文件夹路径不存在,或者没有读取该文件夹的权限,就会报FileNotFoundError或PermissionError错误。请确保路径正确,并且程序有足够的权限读取该文件夹。
相关问题
怎么用python模拟登录https://xyq.cbg.163.com/cgi-bin/show_login.py?act=show_login&area_name=%E4%B8%8A%E6%B5%B71%E5%8C%BA&area_id=1&server_id=159&server_name=%E5%A4%A7%E6%98%8E%E6%B9%96&return_url=https%3A%2F%2Fxyq.cbg.163.com%2Fcgi-bin%2Fquery.py%3Fact%3Dsearch_pet 这个网站
你可以使用Python中的requests库和BeautifulSoup库来模拟登录。
以下是一个简单的示例代码:
```python
import requests
from bs4 import BeautifulSoup
# 登录页面URL
login_url = 'https://xyq.cbg.163.com/cgi-bin/show_login.py?act=show_login&area_name=%E4%B8%8A%E6%B5%B71%E5%8C%BA&area_id=1&server_id=159&server_name=%E5%A4%A7%E6%98%8E%E6%B9%96&return_url=https%3A%2F%2Fxyq.cbg.163.com%2Fcgi-bin%2Fquery.py%3Fact%3Dsearch_pet'
# 创建会话
session = requests.Session()
# 获取登录页面
response = session.get(login_url)
soup = BeautifulSoup(response.content, 'html.parser')
# 获取登录页面中的隐藏字段
lt = soup.find('input', {'name': 'lt'}).get('value')
execution = soup.find('input', {'name': 'execution'}).get('value')
# 构造登录请求参数
params = {
'username': 'your_username',
'password': 'your_password',
'lt': lt,
'execution': execution,
'_eventId': 'submit'
}
# 发送登录请求
login_response = session.post(login_url, data=params)
# 检查是否登录成功
if '登录成功' in login_response.text:
print('登录成功')
else:
print('登录失败')
```
在上面的代码中,我们首先通过requests库获取登录页面的HTML代码,然后使用BeautifulSoup库解析HTML代码并获取隐藏字段lt和execution。接下来,我们构造登录请求参数,并使用会话对象发送登录请求。最后,我们检查登录响应中是否包含“登录成功”字符串来判断是否登录成功。
请注意,这只是一个简单的示例代码,实际情况可能更加复杂。例如,有些网站可能需要使用验证码等安全措施来防止机器人登录。
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd"> -<properties> <entry key="app_preset_prof_preset_name">NewAESUtil (1) Launch Configuration</entry> <entry key="app_preset_prof_preset_filter_s"/> <entry key="app_preset_prof_preset_filter_p">com.tool.Document.*, com.tool.ModerateTask.*, com.tool.PanelDisplay.*, com.tool.PlayerKill.*, com.tool.Stall.*, com.tool.btn.*, com.tool.image.*, com.tool.pet.*, com.tool.role.*, com.tool.tcp.*, com.tool.time.*, come.tool.BangBattle.*, come.tool.Fighting.*, come.tool.JDialog.*, come.tool.Scene.*, come.tool.handle.*, come.tool.map.*, org.cbg.bean.*, org.cbg.btn.*, org.cbg.control.*, org.cbg.entity.*, org.cbg.frame.*, org.cbg.mouslisten.*, org.cbg.panel.*, org.cbg.until.*, org.come.Frame.*, org.come.Jpanel.*, org.come.action.*, org.come.bean.*, org.come.control.*, org.come.daily.*, org.come.entity.*, org.come.good.*, org.come.login.*, org.come.model.*, org.come.mouslisten.*, org.come.npc.*, org.come.socket.*, org.come.starcard.*, org.come.strength.*, org.come.summonequip.*, org.come.test.*, org.come.thread.*, org.come.until.*, org.come.view.*, org.gemstone.btn.*, org.gemstone.mouseListener.*, org.gemstone.panel.*, org.lottery.btn.*, org.lottery.frame.*, org.lottery.mouseListener.*, org.lottery.panel.*, org.skill.btn.*, org.skill.frame.*, org.skill.panel.*, org.soaring.btn.*, org.soaring.panel.*, org.wing.btn.*, org.wing.mouseListener.*, org.wing.panel.*</entry> <entry key="app_preset_prof_preset_alloc_p">10</entry> <entry key="app_preset_"/> <entry key="app_preset_prof_preset_samplingRefreshRate_s">1000</entry> <entry key="app_preset_prof_preset_stacks_p">false</entry> <entry key="app_preset_prof_preset_roots_p">com.tool.Document.** com.tool.ModerateTask.** com.tool.PanelDisplay.** com.tool.PlayerKill.** com.tool.Stall.** com.tool.btn.** com.tool.image.** com.tool.pet.** com.tool.role.** com.tool.tcp.** com.tool.time.** come.tool.BangBattle.** come.tool.Fighting.** come.tool.JDialog.** come.tool.Scene.** come.tool.handle.** come.tool.map.** org.cbg.bean.** org.cbg.btn.** org.cbg.control.** org.cbg.entity.** org.cbg.frame.** org.cbg.mouslisten.** org.cbg.panel.** org.cbg.until.** org.come.Frame.** org.come.Jpanel.** org.come.action.** org.come.bean.** org.come.control.** org.come.daily.** org.come.entity.** org.come.good.** org.come.login.** org.come.model.** org.come.mouslisten.** org.come.npc.** org.come.socket.** org.come.starcard.** org.come.strength.** org.come.summonequip.** org.come.test.** org.come.thread.** org.come.until.** org.come.view.** org.gemstone.btn.** org.gemstone.mouseListener.** org.gemstone.panel.** org.lottery.btn.** org.lottery.frame.** org.lottery.mouseListener.** org.lottery.panel.** org.skill.btn.** org.skill.frame.** org.skill.panel.** org.soaring.btn.** org.soaring.panel.** org.wing.btn.** org.wing.mouseListener.** org.wing.panel.** </entry> <entry key="profiler.settings.instrument.empty.methods">false</entry> <entry key="myeclipse.profiling.mode">0</entry> <entry key="profiler.settings.istrument.getter.setter.methods">false</entry> <entry key="app_preset_prof_preset_samplingRate_s">100</entry> <entry key="app_preset_prof_preset_filterMode_s">true</entry> <entry key="app_preset_prof_preset_selector"/> <entry key="app_preset_prof_preset_refreshRate_s">1000</entry> <entry key="app_preset_prof_preset_runnables_p">true</entry> <entry key="app_preset_prof_preset_filterMode_p">false</entry> <entry key="app_preset_prof_preset_memoryMode_p">true</entry> </properties>
这是一个 Java 的 properties 文件,其中包含了一些键值对。其中的值可能是一些类的路径,也可能是一些布尔值或整数值。如果需要使用这些键值对,可以通过 Java 的 Properties 类来读取和解析。
阅读全文