gpt4 book ai didi

python - 如何使用 Mechanize 结果的结果填充文本?

转载 作者:行者123 更新时间:2023-12-04 16:21:19 25 4
gpt4 key购买 nike

我正在尝试使用从 Mechanize 表单获得的响应填充 txt 文件。这是表单代码

import mechanize
from bs4 import BeautifulSoup
br = mechanize.Browser()
br.open ('https://www.cpsbc.ca/physician_search')

first = raw_input('Enter first name: ')
last = raw_input('Enter last name: ')

br.select_form(nr=0)
br.form['filter[first_name]'] = first
br.form['filter[last_name]'] = last
response = br.submit()
content = response.read()
soup = BeautifulSoup(content, "html.parser")

for row in soup.find_all('tbody'):
print row

这会根据文档在位置方面拥有多少权限来输出 html 代码行,但最后一行有他们的专业培训。请继续与来自加拿大不列颠哥伦比亚省的任何医生进行测试。

我有一个这样列出的txt文件:
lastname1, firstname1
lastname2, firstname2
lastname3, firstname3 middlename3
lastname4, firstname4 middlename4

我希望你明白。我将不胜感激任何帮助自动化以下步骤:

将名称一一遍历 txt 并将输出文本记录到一个新的 txt 文件中。

到目前为止,我有这个工作来吐出行(这是原始 html),我不介意,但我无法将其写入 txt 文件...
import mechanize
from bs4 import BeautifulSoup

with open('/Users/s/Downloads/hope.txt', 'w') as file_out:
with open('/Users/s/Downloads/names.txt', 'r') as file_in:
for line in file_in:
a = line
delim = ", "
i1 = a.find(delim)

br = mechanize.Browser()
br.open('https://www.cpsbc.ca/physician_search')

br.select_form(nr=0)
br.form['filter[first_name]'] = a[i1+2:]
br.form['filter[last_name]'] = a[:i1]
response = br.submit()
content = response.read()
soup = BeautifulSoup(content, "html.parser")

for row in soup.find_all('tbody'):
print row

最佳答案

这不应该太复杂。假设您要查询的所有名称的文件称为“names.txt”,而您要创建的输出文件称为“output.txt”,代码应如下所示:

with open('output.txt', 'w') as file_out:
with open('names.txt', 'r') as file_in:
for line in file_in:
<your parsing logic goes here>
file_out.write(new_record)

这假设您的解析逻辑生成某种“记录”以作为字符串写入文件。

如果您更高级,还可以查看 csv以 CSV 格式导入/导出数据的模块。

也看看 Input and Output tutorial .

关于python - 如何使用 Mechanize 结果的结果填充文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39443370/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com