Browse Source

Add new `mode` parameter, work on unliking pages

pull/31/head
Wesley Kerfoot 5 years ago
parent
commit
db015cc281
  1. 26
      deletefb/deletefb.py
  2. 20
      deletefb/tools/likes.py

26
deletefb/deletefb.py

@ -3,11 +3,25 @@
import argparse
import getpass
from sys import exit
from deletefb.tools.login import login
import deletefb.tools.wall as wall
import deletefb.tools.likes as likes
def run_delete():
parser = argparse.ArgumentParser()
parser.add_argument(
"-M",
"--mode",
required=False,
default="wall",
dest="mode",
type=str,
choices=["wall", "unlike_pages"],
help="The mode you want to run in. Default is `wall' which deletes wall posts"
)
parser.add_argument(
"-E",
"--email",
@ -73,9 +87,15 @@ def run_delete():
two_factor_token=args.two_factor_token
)
wall.delete_posts(driver,
args.profile_url,
year=args.year)
if args.mode == "wall":
wall.delete_posts(driver,
args.profile_url,
year=args.year)
elif args.mode == "unlike_pages":
likes.unlike_pages(driver, args.profile_url)
else:
print("Please enter a valid mode")
exit(1)
if __name__ == "__main__":
run_delete()

20
deletefb/tools/likes.py

@ -1,8 +1,24 @@
from time import sleep
from selenium.webdriver.common.action_chains import ActionChains
from .common import SELENIUM_EXCEPTIONS
def unlike_pages(driver):
def unlike_pages(driver,
user_profile_url):
"""
Unlike all pages
"""
return
actions = ActionChains(driver)
driver.get("https://www.facebook.com/pages/?category=liked")
pages_list = driver.find_element_by_css_selector("#all_liked_pages")
actions.move_to_element(pages_list)
unlike_buttons = pages_list.find_elements_by_xpath("//button")
for button in unlike_buttons:
print(button)
sleep(1000)

Loading…
Cancel
Save