我正在编写一个python脚本,只将facebook group_id从文件A复制到文件B. 我在这里使用的代码是
searchquery = 'group_id='
with open('h1.txt') as f1:
with open('h2.txt', 'a') as f2:
lines = f1.readlines()
for i, line in enumerate(lines):
if searchquery in line:
f2.write(line)`
当我运行此脚本时,它会成功运行并创建h2.txt文件作为h1.txt的副本。任何人都可以指导我出错的地方吗?
除了我正在做的事情之外,还有任何有效的方法来提取唯一的facebook群组名称和链接,请分享。感谢
我的h1.txt文件是here
答案 0 :(得分:1)
来自data
的所有h1.txt
都在一行上,因此当h2.txt
为True时,您最终将所有数据都写入if searchquery in line
,这样您就可以编写一行恰好是h1.txt
到h2.txt
中的唯一一行,如果您只是希望group_id =..
使用正则表达式:
with open("h1.txt") as f:
import re
dat = f.read()
print(re.findall("group_id=\d+", data))
输出:
['group_id=132946160231517', 'group_id=132946160231517', 'group_id=193252980718262', 'group_id=193252980718262', 'group_id=399162576788186', 'group_id=399162576788186']
如果您只想要ID:
dat = f.read()
print(re.findall("group_id=(\d+)",data))
['132946160231517', '132946160231517', '193252980718262', '193252980718262', '399162576788186', '399162576788186']
如果你想要名字:
re.findall('"name":"(.*?)"',data)
答案 1 :(得分:1)
>>> with open('h1.txt') as f:
... re.findall(r'group_id=[0-9]+', f.read())
...
['group_id=132946160231517', 'group_id=132946160231517', 'group_id=193252980718262', 'group_id=193252980718262', 'group_id=399162576788186', 'group_id=399162576788186']