Using Python, How can I create a bot/script that let’s me re-post a subreddit’s post to Lemmy?

Just wanted to do a simple little project to practice my programming skills.

I just need to know the outline/backbone of things I should know to do this project.

You are viewing a single thread.
View all comments
3 points

Why does everybody wants to use python 😔

permalink
report
reply
7 points

It’s easy to learn, has many packages, one of the most well known languages

permalink
report
parent
reply
-3 points
*

easy to learn yeah ig. But for anything more than a simple 1 file organized script is not (easily) doable. I dont even want to start with the indentations. Yeah many packages :) But why? Because like half of vanilla stuff from other languages cant be done without it. Most known? Most started to learn language. Those “script” kiddies count in there too. I have to work with it everyday and i dont know how such bs could ever been created from a sane person.

Most of it is personal opinion and will spark like html is not a programming language some heated discussions here.

permalink
report
parent
reply
2 points

A project that is seperated in different files is as difficult as in C(++), Java or Rust. Regarding the itendation I agree, but that’s personal preference. What ‘vanilla’ stuff can’t you do without libs?

permalink
report
parent
reply
5 points

I can’t speak for everybody, but I found python easier to understand than the other language I tried (C++).

Also, python has Pandas which was really good because my initial track was related to data scientist.

permalink
report
parent
reply
2 points

Yeah c++ is a bit difficult.

permalink
report
parent
reply
4 points

What language would you suggest for scripting like this?

permalink
report
parent
reply
-2 points

Typescript (JS)

permalink
report
parent
reply
2 points

Really? You hate python but recommend typescript? All the problems you cited about python are there, too!

Garbage stack traces that go through a hundred lines of node modules.

Dependency hell. Peer deps. Npm or yarn? An ecosystem where packages have a half life of weeks. A new major version of node comes out literally every six months. SIX MONTHS. MAJOR VERSION CHANGE. And you complained about python2 vs 3!

Typescript also has a garbage debugger compared to python.

There’s also just too many ways of doing things because the standard lib is thin. How many ways to loop over an object are there? For in, for each, object keys, lodash, underscore, object.entries, what am I forgetting?

Newer versions have stuff in the standard lib like Array.at, but if you’re targeting an older browser that won’t work unless you enter the wonderful world of transpiling and polyfills. And you thought virtualenv was bad??

And let’s not forget the language’s obsession with being async, even when you don’t expect or want it. How many hours have been lost because someone forgot to await response.json()?

Oh right and remember how there’s like six ways of declaring a function. The function keyword, when it’s in a class, and like four variations on arrow function syntax. And arrow functions are different than ones with the function keyword.

And lots of other little weird gotchas like

const foo = "hello";
const bar = { foo: "world"};

Go on. What do you think that object key is? The syntax is insane . You need to do { [foo]: “world”} to reference a variable as a key. Which looks like a list. Because typescript/javascript is kind of bad.

Typescript is used in the browser because that’s the only thing really supported there for front ends. It’s a horrible tool for anything else.

permalink
report
parent
reply
2 points

It’s a widely supported language with comparably fewer gotchas and foot guns.

permalink
report
parent
reply
0 points

Ohh you got python3 installed but this script is only for python2. Oh no you want a specific version of a package you gotta create a fucking venv for it! And hope that you dont forget next time you start :) Oh you renamed a variable of a class. You gotta catch them all! With the (sorry) worst error messages i have ever seen. You can still delete system32 with it.

permalink
report
parent
reply
2 points

Almost every language has versions. Python’s is fairly stable. Python2 has been end of life for a few years now, and I don’t think there’s a python 4 even on the horizon.

Almost every language has dependency management. Use an IDE.

Use an IDE with refactor->rename. I’ve never had a problem with renaming. Right now when I went to see what it would do, it suggested correctly “did you mean [correct variable name]?”. But even without that it just says my class has no attribute with the incorrect name, which is about what I would expect. If you think these are bad error messages you should stay away from JavaScript.

Most languages running as admin can delete files. I don’t see how that’s a relevant critique of python.

permalink
report
parent
reply
1 point

I have such mixed emotions about Python. I have to concede its uses. Especially when working with data and data scientists. A lot of people use it. There is a good amount of existing code floating around that can be re-used, etc. Its never the first language I reach for, but I have to accept that a lot of people use it.

But OMG, I have had to re-install my OS more than once due to python versioning issues. Not recently sure, I think I have it figured out now with virtualenv and pyenv, but it literally has caused me to reformat twice after getting too deep into dependency version mismatch hell.

permalink
report
parent
reply
1 point

Python is what is being taught in schools these days.

permalink
report
parent
reply
1 point

i started learning it bc i was told it was easy, and it was, but i switched to JS because I had no practical uses for python, but i can say it did help me understand JS better

permalink
report
parent
reply

No Stupid Questions

!nostupidquestions@lemmy.world

Create post

No such thing. Ask away!

!nostupidquestions is a community dedicated to being helpful and answering each others’ questions on various topics.

The rules for posting and commenting, besides the rules defined here for lemmy.world, are as follows:

Rules (interactive)


Rule 1- All posts must be legitimate questions. All post titles must include a question.

All posts must be legitimate questions, and all post titles must include a question. Questions that are joke or trolling questions, memes, song lyrics as title, etc. are not allowed here. See Rule 6 for all exceptions.



Rule 2- Your question subject cannot be illegal or NSFW material.

Your question subject cannot be illegal or NSFW material. You will be warned first, banned second.



Rule 3- Do not seek mental, medical and professional help here.

Do not seek mental, medical and professional help here. Breaking this rule will not get you or your post removed, but it will put you at risk, and possibly in danger.



Rule 4- No self promotion or upvote-farming of any kind.

That’s it.



Rule 5- No baiting or sealioning or promoting an agenda.

Questions which, instead of being of an innocuous nature, are specifically intended (based on reports and in the opinion of our crack moderation team) to bait users into ideological wars on charged political topics will be removed and the authors warned - or banned - depending on severity.



Rule 6- Regarding META posts and joke questions.

Provided it is about the community itself, you may post non-question posts using the [META] tag on your post title.

On fridays, you are allowed to post meme and troll questions, on the condition that it’s in text format only, and conforms with our other rules. These posts MUST include the [NSQ Friday] tag in their title.

If you post a serious question on friday and are looking only for legitimate answers, then please include the [Serious] tag on your post. Irrelevant replies will then be removed by moderators.



Rule 7- You can't intentionally annoy, mock, or harass other members.

If you intentionally annoy, mock, harass, or discriminate against any individual member, you will be removed.

Likewise, if you are a member, sympathiser or a resemblant of a movement that is known to largely hate, mock, discriminate against, and/or want to take lives of a group of people, and you were provably vocal about your hate, then you will be banned on sight.



Rule 8- All comments should try to stay relevant to their parent content.

Rule 9- Reposts from other platforms are not allowed.

Let everyone have their own content.



Rule 10- Majority of bots aren't allowed to participate here.

Credits

Our breathtaking icon was bestowed upon us by @Cevilia!

The greatest banner of all time: by @TheOneWithTheHair!

Community stats

  • 9.5K

    Monthly active users

  • 3.8K

    Posts

  • 148K

    Comments